/* Generated automatically by the program `genrecog' from the target
   machine description file.  */

#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "rtl.h"
#include "tm_p.h"
#include "hashtab.h"
#include "hash-set.h"
#include "vec.h"
#include "machmode.h"
#include "hard-reg-set.h"
#include "input.h"
#include "function.h"
#include "insn-config.h"
#include "recog.h"
#include "output.h"
#include "flags.h"
#include "hard-reg-set.h"
#include "predict.h"
#include "basic-block.h"
#include "resource.h"
#include "diagnostic-core.h"
#include "reload.h"
#include "regs.h"
#include "tm-constrs.h"
#include "predict.h"



/* `recog' contains a decision tree that recognizes whether the rtx
   X0 is a valid instruction.

   recog returns -1 if the rtx is not valid.  If the rtx is valid, recog
   returns a nonnegative number which is the insn code number for the
   pattern that matched.  This is the same as the order in the machine
   description of the entry that matched.  This number can be used as an
   index into `insn_data' and other tables.

   The third argument to recog is an optional pointer to an int.  If
   present, recog will accept a pattern if it matches except for missing
   CLOBBER expressions at the end.  In that case, the value pointed to by
   the optional pointer will be set to the number of CLOBBERs that need
   to be added (it should be initialized to zero by the caller).  If it
   is set nonzero, the caller should allocate a PARALLEL of the
   appropriate size, copy the initial entries, and call add_clobbers
   (found in insn-emit.c) to fill in the CLOBBERs.


   The function split_insns returns 0 if the rtl could not
   be split or the split rtl as an INSN list if it can be.

   The function peephole2_insns returns 0 if the rtl could not
   be matched. If there was a match, the new rtl is returned in an INSN list,
   and LAST_INSN will point to the last recognized insn in the old sequence.
*/


extern rtx gen_split_4766 (rtx_insn *, rtx *);
extern rtx gen_split_4767 (rtx_insn *, rtx *);
extern rtx gen_split_4768 (rtx_insn *, rtx *);
extern rtx gen_split_4769 (rtx_insn *, rtx *);
extern rtx gen_split_4770 (rtx_insn *, rtx *);
extern rtx gen_split_4771 (rtx_insn *, rtx *);
extern rtx gen_split_4772 (rtx_insn *, rtx *);
extern rtx gen_split_4773 (rtx_insn *, rtx *);
extern rtx gen_split_4774 (rtx_insn *, rtx *);
extern rtx gen_split_4775 (rtx_insn *, rtx *);
extern rtx gen_split_4776 (rtx_insn *, rtx *);
extern rtx gen_split_4777 (rtx_insn *, rtx *);
extern rtx gen_split_4778 (rtx_insn *, rtx *);
extern rtx gen_split_4779 (rtx_insn *, rtx *);
extern rtx gen_split_4780 (rtx_insn *, rtx *);
extern rtx gen_split_4781 (rtx_insn *, rtx *);
extern rtx gen_split_4790 (rtx_insn *, rtx *);
extern rtx gen_split_4791 (rtx_insn *, rtx *);
extern rtx gen_split_4794 (rtx_insn *, rtx *);
extern rtx gen_split_4795 (rtx_insn *, rtx *);
extern rtx gen_split_4796 (rtx_insn *, rtx *);
extern rtx gen_split_4797 (rtx_insn *, rtx *);
extern rtx gen_split_4798 (rtx_insn *, rtx *);
extern rtx gen_split_4799 (rtx_insn *, rtx *);
extern rtx gen_split_4800 (rtx_insn *, rtx *);
extern rtx gen_split_4801 (rtx_insn *, rtx *);
extern rtx gen_split_4802 (rtx_insn *, rtx *);
extern rtx gen_split_4803 (rtx_insn *, rtx *);
extern rtx gen_split_4808 (rtx_insn *, rtx *);
extern rtx gen_split_4809 (rtx_insn *, rtx *);
extern rtx gen_split_4810 (rtx_insn *, rtx *);
extern rtx gen_split_4811 (rtx_insn *, rtx *);
extern rtx gen_split_4812 (rtx_insn *, rtx *);
extern rtx gen_split_4813 (rtx_insn *, rtx *);
extern rtx gen_split_4815 (rtx_insn *, rtx *);
extern rtx gen_split_4816 (rtx_insn *, rtx *);
extern rtx gen_split_4817 (rtx_insn *, rtx *);
extern rtx gen_split_4820 (rtx_insn *, rtx *);
extern rtx gen_split_4821 (rtx_insn *, rtx *);
extern rtx gen_split_4823 (rtx_insn *, rtx *);
extern rtx gen_split_4825 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4826 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4827 (rtx_insn *, rtx *);
extern rtx gen_split_4828 (rtx_insn *, rtx *);
extern rtx gen_split_4829 (rtx_insn *, rtx *);
extern rtx gen_split_4830 (rtx_insn *, rtx *);
extern rtx gen_split_4831 (rtx_insn *, rtx *);
extern rtx gen_split_4832 (rtx_insn *, rtx *);
extern rtx gen_split_4833 (rtx_insn *, rtx *);
extern rtx gen_split_4834 (rtx_insn *, rtx *);
extern rtx gen_split_4836 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4837 (rtx_insn *, rtx *);
extern rtx gen_split_4841 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4842 (rtx_insn *, rtx *);
extern rtx gen_split_4844 (rtx_insn *, rtx *);
extern rtx gen_split_4847 (rtx_insn *, rtx *);
extern rtx gen_split_4848 (rtx_insn *, rtx *);
extern rtx gen_split_4849 (rtx_insn *, rtx *);
extern rtx gen_split_4850 (rtx_insn *, rtx *);
extern rtx gen_split_4862 (rtx_insn *, rtx *);
extern rtx gen_split_4863 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4866 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4867 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4868 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4869 (rtx_insn *, rtx *);
extern rtx gen_split_4870 (rtx_insn *, rtx *);
extern rtx gen_split_4871 (rtx_insn *, rtx *);
extern rtx gen_split_4872 (rtx_insn *, rtx *);
extern rtx gen_split_4873 (rtx_insn *, rtx *);
extern rtx gen_split_4874 (rtx_insn *, rtx *);
extern rtx gen_split_4875 (rtx_insn *, rtx *);
extern rtx gen_split_4876 (rtx_insn *, rtx *);
extern rtx gen_split_4877 (rtx_insn *, rtx *);
extern rtx gen_split_4878 (rtx_insn *, rtx *);
extern rtx gen_split_4879 (rtx_insn *, rtx *);
extern rtx gen_split_4880 (rtx_insn *, rtx *);
extern rtx gen_split_4881 (rtx_insn *, rtx *);
extern rtx gen_split_4882 (rtx_insn *, rtx *);
extern rtx gen_split_4883 (rtx_insn *, rtx *);
extern rtx gen_split_4884 (rtx_insn *, rtx *);
extern rtx gen_split_4885 (rtx_insn *, rtx *);
extern rtx gen_split_4886 (rtx_insn *, rtx *);
extern rtx gen_split_4887 (rtx_insn *, rtx *);
extern rtx gen_split_4890 (rtx_insn *, rtx *);
extern rtx gen_split_4891 (rtx_insn *, rtx *);
extern rtx gen_split_4892 (rtx_insn *, rtx *);
extern rtx gen_split_4893 (rtx_insn *, rtx *);
extern rtx gen_split_4894 (rtx_insn *, rtx *);
extern rtx gen_split_4895 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4896 (rtx_insn *, rtx *);
extern rtx gen_peephole2_4897 (rtx_insn *, rtx *);
extern rtx gen_split_4898 (rtx_insn *, rtx *);
extern rtx gen_split_4899 (rtx_insn *, rtx *);
extern rtx gen_split_4900 (rtx_insn *, rtx *);
extern rtx gen_split_4901 (rtx_insn *, rtx *);
extern rtx gen_split_4902 (rtx_insn *, rtx *);
extern rtx gen_split_4903 (rtx_insn *, rtx *);
extern rtx gen_split_4908 (rtx_insn *, rtx *);
extern rtx gen_split_4909 (rtx_insn *, rtx *);
extern rtx gen_split_4910 (rtx_insn *, rtx *);
extern rtx gen_split_4914 (rtx_insn *, rtx *);
extern rtx gen_split_4915 (rtx_insn *, rtx *);
extern rtx gen_split_4920 (rtx_insn *, rtx *);
extern rtx gen_split_4921 (rtx_insn *, rtx *);
extern rtx gen_split_4922 (rtx_insn *, rtx *);
extern rtx gen_split_4923 (rtx_insn *, rtx *);
extern rtx gen_split_4924 (rtx_insn *, rtx *);
extern rtx gen_split_4925 (rtx_insn *, rtx *);
extern rtx gen_split_4926 (rtx_insn *, rtx *);
extern rtx gen_split_4930 (rtx_insn *, rtx *);
extern rtx gen_split_4931 (rtx_insn *, rtx *);
extern rtx gen_split_4932 (rtx_insn *, rtx *);
extern rtx gen_split_4933 (rtx_insn *, rtx *);
extern rtx gen_split_4934 (rtx_insn *, rtx *);
extern rtx gen_split_4939 (rtx_insn *, rtx *);
extern rtx gen_split_4968 (rtx_insn *, rtx *);
extern rtx gen_split_4969 (rtx_insn *, rtx *);
extern rtx gen_split_4980 (rtx_insn *, rtx *);
extern rtx gen_split_4981 (rtx_insn *, rtx *);
extern rtx gen_split_4982 (rtx_insn *, rtx *);
extern rtx gen_split_4983 (rtx_insn *, rtx *);
extern rtx gen_split_4984 (rtx_insn *, rtx *);
extern rtx gen_split_4988 (rtx_insn *, rtx *);
extern rtx gen_split_4989 (rtx_insn *, rtx *);
extern rtx gen_split_4990 (rtx_insn *, rtx *);
extern rtx gen_split_4991 (rtx_insn *, rtx *);
extern rtx gen_split_4992 (rtx_insn *, rtx *);
extern rtx gen_split_4993 (rtx_insn *, rtx *);
extern rtx gen_split_4998 (rtx_insn *, rtx *);
extern rtx gen_split_4999 (rtx_insn *, rtx *);
extern rtx gen_split_5000 (rtx_insn *, rtx *);
extern rtx gen_split_5001 (rtx_insn *, rtx *);
extern rtx gen_split_5002 (rtx_insn *, rtx *);
extern rtx gen_split_5003 (rtx_insn *, rtx *);
extern rtx gen_split_5004 (rtx_insn *, rtx *);
extern rtx gen_split_5005 (rtx_insn *, rtx *);
extern rtx gen_split_5006 (rtx_insn *, rtx *);
extern rtx gen_split_5007 (rtx_insn *, rtx *);
extern rtx gen_split_5008 (rtx_insn *, rtx *);
extern rtx gen_split_5009 (rtx_insn *, rtx *);
extern rtx gen_split_5010 (rtx_insn *, rtx *);
extern rtx gen_split_5011 (rtx_insn *, rtx *);
extern rtx gen_split_5012 (rtx_insn *, rtx *);
extern rtx gen_split_5016 (rtx_insn *, rtx *);
extern rtx gen_split_5017 (rtx_insn *, rtx *);
extern rtx gen_split_5018 (rtx_insn *, rtx *);
extern rtx gen_split_5019 (rtx_insn *, rtx *);
extern rtx gen_split_5020 (rtx_insn *, rtx *);
extern rtx gen_split_5021 (rtx_insn *, rtx *);
extern rtx gen_split_5022 (rtx_insn *, rtx *);
extern rtx gen_split_5023 (rtx_insn *, rtx *);
extern rtx gen_split_5024 (rtx_insn *, rtx *);
extern rtx gen_split_5025 (rtx_insn *, rtx *);
extern rtx gen_split_5032 (rtx_insn *, rtx *);
extern rtx gen_split_5033 (rtx_insn *, rtx *);
extern rtx gen_split_5034 (rtx_insn *, rtx *);
extern rtx gen_split_5035 (rtx_insn *, rtx *);
extern rtx gen_split_5036 (rtx_insn *, rtx *);
extern rtx gen_split_5037 (rtx_insn *, rtx *);
extern rtx gen_split_5038 (rtx_insn *, rtx *);
extern rtx gen_split_5039 (rtx_insn *, rtx *);
extern rtx gen_split_5045 (rtx_insn *, rtx *);
extern rtx gen_split_5057 (rtx_insn *, rtx *);
extern rtx gen_split_5058 (rtx_insn *, rtx *);
extern rtx gen_split_5059 (rtx_insn *, rtx *);
extern rtx gen_split_5060 (rtx_insn *, rtx *);
extern rtx gen_split_5061 (rtx_insn *, rtx *);
extern rtx gen_split_5065 (rtx_insn *, rtx *);
extern rtx gen_split_5066 (rtx_insn *, rtx *);
extern rtx gen_split_5067 (rtx_insn *, rtx *);
extern rtx gen_split_5068 (rtx_insn *, rtx *);
extern rtx gen_split_5069 (rtx_insn *, rtx *);
extern rtx gen_split_5070 (rtx_insn *, rtx *);
extern rtx gen_split_5074 (rtx_insn *, rtx *);
extern rtx gen_split_5075 (rtx_insn *, rtx *);
extern rtx gen_split_5076 (rtx_insn *, rtx *);
extern rtx gen_split_5077 (rtx_insn *, rtx *);
extern rtx gen_split_5078 (rtx_insn *, rtx *);
extern rtx gen_split_5083 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5084 (rtx_insn *, rtx *);
extern rtx gen_split_5087 (rtx_insn *, rtx *);
extern rtx gen_split_5088 (rtx_insn *, rtx *);
extern rtx gen_split_5097 (rtx_insn *, rtx *);
extern rtx gen_split_5098 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5099 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5100 (rtx_insn *, rtx *);
extern rtx gen_split_5102 (rtx_insn *, rtx *);
extern rtx gen_split_5103 (rtx_insn *, rtx *);
extern rtx gen_split_5112 (rtx_insn *, rtx *);
extern rtx gen_split_5113 (rtx_insn *, rtx *);
extern rtx gen_split_5114 (rtx_insn *, rtx *);
extern rtx gen_split_5115 (rtx_insn *, rtx *);
extern rtx gen_split_5116 (rtx_insn *, rtx *);
extern rtx gen_split_5117 (rtx_insn *, rtx *);
extern rtx gen_split_5121 (rtx_insn *, rtx *);
extern rtx gen_split_5122 (rtx_insn *, rtx *);
extern rtx gen_split_5123 (rtx_insn *, rtx *);
extern rtx gen_split_5124 (rtx_insn *, rtx *);
extern rtx gen_split_5125 (rtx_insn *, rtx *);
extern rtx gen_split_5126 (rtx_insn *, rtx *);
extern rtx gen_split_5127 (rtx_insn *, rtx *);
extern rtx gen_split_5128 (rtx_insn *, rtx *);
extern rtx gen_split_5129 (rtx_insn *, rtx *);
extern rtx gen_split_5130 (rtx_insn *, rtx *);
extern rtx gen_split_5131 (rtx_insn *, rtx *);
extern rtx gen_split_5132 (rtx_insn *, rtx *);
extern rtx gen_split_5133 (rtx_insn *, rtx *);
extern rtx gen_split_5134 (rtx_insn *, rtx *);
extern rtx gen_split_5135 (rtx_insn *, rtx *);
extern rtx gen_split_5136 (rtx_insn *, rtx *);
extern rtx gen_split_5137 (rtx_insn *, rtx *);
extern rtx gen_split_5138 (rtx_insn *, rtx *);
extern rtx gen_split_5139 (rtx_insn *, rtx *);
extern rtx gen_split_5140 (rtx_insn *, rtx *);
extern rtx gen_split_5141 (rtx_insn *, rtx *);
extern rtx gen_split_5142 (rtx_insn *, rtx *);
extern rtx gen_split_5143 (rtx_insn *, rtx *);
extern rtx gen_split_5144 (rtx_insn *, rtx *);
extern rtx gen_split_5145 (rtx_insn *, rtx *);
extern rtx gen_split_5146 (rtx_insn *, rtx *);
extern rtx gen_split_5147 (rtx_insn *, rtx *);
extern rtx gen_split_5148 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5151 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5152 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5153 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5154 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5157 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5158 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5159 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5160 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5162 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5163 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5164 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5165 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5168 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5169 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5170 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5171 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5173 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5174 (rtx_insn *, rtx *);
extern rtx gen_split_5183 (rtx_insn *, rtx *);
extern rtx gen_split_5187 (rtx_insn *, rtx *);
extern rtx gen_split_5190 (rtx_insn *, rtx *);
extern rtx gen_split_5191 (rtx_insn *, rtx *);
extern rtx gen_split_5196 (rtx_insn *, rtx *);
extern rtx gen_split_5197 (rtx_insn *, rtx *);
extern rtx gen_split_5201 (rtx_insn *, rtx *);
extern rtx gen_split_5202 (rtx_insn *, rtx *);
extern rtx gen_split_5206 (rtx_insn *, rtx *);
extern rtx gen_split_5207 (rtx_insn *, rtx *);
extern rtx gen_split_5210 (rtx_insn *, rtx *);
extern rtx gen_split_5212 (rtx_insn *, rtx *);
extern rtx gen_split_5213 (rtx_insn *, rtx *);
extern rtx gen_split_5223 (rtx_insn *, rtx *);
extern rtx gen_split_5224 (rtx_insn *, rtx *);
extern rtx gen_split_5225 (rtx_insn *, rtx *);
extern rtx gen_split_5226 (rtx_insn *, rtx *);
extern rtx gen_split_5227 (rtx_insn *, rtx *);
extern rtx gen_split_5228 (rtx_insn *, rtx *);
extern rtx gen_split_5291 (rtx_insn *, rtx *);
extern rtx gen_split_5292 (rtx_insn *, rtx *);
extern rtx gen_split_5293 (rtx_insn *, rtx *);
extern rtx gen_split_5294 (rtx_insn *, rtx *);
extern rtx gen_split_5295 (rtx_insn *, rtx *);
extern rtx gen_split_5296 (rtx_insn *, rtx *);
extern rtx gen_split_5297 (rtx_insn *, rtx *);
extern rtx gen_split_5298 (rtx_insn *, rtx *);
extern rtx gen_split_5299 (rtx_insn *, rtx *);
extern rtx gen_split_5314 (rtx_insn *, rtx *);
extern rtx gen_split_5315 (rtx_insn *, rtx *);
extern rtx gen_split_5316 (rtx_insn *, rtx *);
extern rtx gen_split_5326 (rtx_insn *, rtx *);
extern rtx gen_split_5330 (rtx_insn *, rtx *);
extern rtx gen_split_5331 (rtx_insn *, rtx *);
extern rtx gen_split_5332 (rtx_insn *, rtx *);
extern rtx gen_split_5333 (rtx_insn *, rtx *);
extern rtx gen_split_5334 (rtx_insn *, rtx *);
extern rtx gen_split_5335 (rtx_insn *, rtx *);
extern rtx gen_split_5336 (rtx_insn *, rtx *);
extern rtx gen_split_5337 (rtx_insn *, rtx *);
extern rtx gen_split_5338 (rtx_insn *, rtx *);
extern rtx gen_split_5339 (rtx_insn *, rtx *);
extern rtx gen_split_5340 (rtx_insn *, rtx *);
extern rtx gen_split_5341 (rtx_insn *, rtx *);
extern rtx gen_split_5342 (rtx_insn *, rtx *);
extern rtx gen_split_5343 (rtx_insn *, rtx *);
extern rtx gen_split_5344 (rtx_insn *, rtx *);
extern rtx gen_split_5345 (rtx_insn *, rtx *);
extern rtx gen_split_5346 (rtx_insn *, rtx *);
extern rtx gen_split_5347 (rtx_insn *, rtx *);
extern rtx gen_split_5358 (rtx_insn *, rtx *);
extern rtx gen_split_5359 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5381 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5382 (rtx_insn *, rtx *);
extern rtx gen_split_5387 (rtx_insn *, rtx *);
extern rtx gen_split_5388 (rtx_insn *, rtx *);
extern rtx gen_split_5389 (rtx_insn *, rtx *);
extern rtx gen_split_5390 (rtx_insn *, rtx *);
extern rtx gen_split_5391 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5392 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5393 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5394 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5395 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5396 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5397 (rtx_insn *, rtx *);
extern rtx gen_split_5401 (rtx_insn *, rtx *);
extern rtx gen_split_5402 (rtx_insn *, rtx *);
extern rtx gen_split_5403 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5404 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5405 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5406 (rtx_insn *, rtx *);
extern rtx gen_split_5413 (rtx_insn *, rtx *);
extern rtx gen_split_5414 (rtx_insn *, rtx *);
extern rtx gen_split_5415 (rtx_insn *, rtx *);
extern rtx gen_split_5416 (rtx_insn *, rtx *);
extern rtx gen_split_5417 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5418 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5419 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5420 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5421 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5422 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5423 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5424 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5425 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5426 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5427 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5428 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5429 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5430 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5431 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5432 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5433 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5434 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5435 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5436 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5437 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5438 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5439 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5440 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5441 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5442 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5443 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5444 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5445 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5446 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5447 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5448 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5449 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5450 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5451 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5452 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5453 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5454 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5455 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5456 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5457 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5458 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5459 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5460 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5461 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5462 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5463 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5464 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5465 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5466 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5467 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5468 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5469 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5470 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5471 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5472 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5473 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5474 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5475 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5476 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5477 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5478 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5479 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5480 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5481 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5482 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5483 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5484 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5485 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5486 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5487 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5488 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5489 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5490 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5491 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5492 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5493 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5494 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5495 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5496 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5497 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5498 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5499 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5500 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5501 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5502 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5503 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5504 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5505 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5506 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5507 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5508 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5509 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5510 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5511 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5512 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5513 (rtx_insn *, rtx *);
extern rtx gen_peephole2_5514 (rtx_insn *, rtx *);
extern rtx gen_split_5544 (rtx_insn *, rtx *);
extern rtx gen_split_5545 (rtx_insn *, rtx *);
extern rtx gen_split_5546 (rtx_insn *, rtx *);
extern rtx gen_split_5547 (rtx_insn *, rtx *);
extern rtx gen_split_5548 (rtx_insn *, rtx *);
extern rtx gen_split_5562 (rtx_insn *, rtx *);
extern rtx gen_split_5563 (rtx_insn *, rtx *);
extern rtx gen_split_5607 (rtx_insn *, rtx *);
extern rtx gen_split_5608 (rtx_insn *, rtx *);
extern rtx gen_split_5643 (rtx_insn *, rtx *);
extern rtx gen_split_5644 (rtx_insn *, rtx *);
extern rtx gen_split_5645 (rtx_insn *, rtx *);
extern rtx gen_split_5727 (rtx_insn *, rtx *);
extern rtx gen_split_5728 (rtx_insn *, rtx *);
extern rtx gen_split_5729 (rtx_insn *, rtx *);
extern rtx gen_split_5730 (rtx_insn *, rtx *);
extern rtx gen_split_5731 (rtx_insn *, rtx *);
extern rtx gen_split_5732 (rtx_insn *, rtx *);
extern rtx gen_split_6112 (rtx_insn *, rtx *);
extern rtx gen_split_6113 (rtx_insn *, rtx *);
extern rtx gen_split_6130 (rtx_insn *, rtx *);
extern rtx gen_split_6131 (rtx_insn *, rtx *);
extern rtx gen_split_6132 (rtx_insn *, rtx *);
extern rtx gen_split_6141 (rtx_insn *, rtx *);
extern rtx gen_split_6142 (rtx_insn *, rtx *);
extern rtx gen_split_6153 (rtx_insn *, rtx *);
extern rtx gen_split_6154 (rtx_insn *, rtx *);
extern rtx gen_split_6155 (rtx_insn *, rtx *);
extern rtx gen_split_6156 (rtx_insn *, rtx *);
extern rtx gen_split_6157 (rtx_insn *, rtx *);
extern rtx gen_split_6158 (rtx_insn *, rtx *);
extern rtx gen_split_6159 (rtx_insn *, rtx *);
extern rtx gen_split_6160 (rtx_insn *, rtx *);
extern rtx gen_split_6161 (rtx_insn *, rtx *);
extern rtx gen_split_6162 (rtx_insn *, rtx *);
extern rtx gen_split_6193 (rtx_insn *, rtx *);
extern rtx gen_split_6194 (rtx_insn *, rtx *);
extern rtx gen_split_6223 (rtx_insn *, rtx *);
extern rtx gen_split_6224 (rtx_insn *, rtx *);
extern rtx gen_split_6226 (rtx_insn *, rtx *);
extern rtx gen_split_6228 (rtx_insn *, rtx *);
extern rtx gen_split_6846 (rtx_insn *, rtx *);
extern rtx gen_split_6847 (rtx_insn *, rtx *);
extern rtx gen_split_6848 (rtx_insn *, rtx *);
extern rtx gen_split_6849 (rtx_insn *, rtx *);
extern rtx gen_split_6850 (rtx_insn *, rtx *);
extern rtx gen_split_6851 (rtx_insn *, rtx *);
extern rtx gen_split_6852 (rtx_insn *, rtx *);
extern rtx gen_split_6853 (rtx_insn *, rtx *);
extern rtx gen_split_6935 (rtx_insn *, rtx *);
extern rtx gen_split_6936 (rtx_insn *, rtx *);
extern rtx gen_split_6937 (rtx_insn *, rtx *);
extern rtx gen_split_6938 (rtx_insn *, rtx *);
extern rtx gen_split_7008 (rtx_insn *, rtx *);
extern rtx gen_split_7009 (rtx_insn *, rtx *);
extern rtx gen_split_7010 (rtx_insn *, rtx *);
extern rtx gen_split_7011 (rtx_insn *, rtx *);
extern rtx gen_split_7012 (rtx_insn *, rtx *);
extern rtx gen_split_7013 (rtx_insn *, rtx *);
extern rtx gen_split_7014 (rtx_insn *, rtx *);
extern rtx gen_split_7015 (rtx_insn *, rtx *);
extern rtx gen_split_7016 (rtx_insn *, rtx *);
extern rtx gen_split_7017 (rtx_insn *, rtx *);
extern rtx gen_split_7018 (rtx_insn *, rtx *);
extern rtx gen_split_7019 (rtx_insn *, rtx *);
extern rtx gen_split_7097 (rtx_insn *, rtx *);
extern rtx gen_split_7098 (rtx_insn *, rtx *);
extern rtx gen_split_7099 (rtx_insn *, rtx *);
extern rtx gen_split_7190 (rtx_insn *, rtx *);
extern rtx gen_split_7191 (rtx_insn *, rtx *);
extern rtx gen_split_7192 (rtx_insn *, rtx *);
extern rtx gen_split_7193 (rtx_insn *, rtx *);
extern rtx gen_split_7194 (rtx_insn *, rtx *);
extern rtx gen_split_7195 (rtx_insn *, rtx *);
extern rtx gen_split_7210 (rtx_insn *, rtx *);
extern rtx gen_split_7215 (rtx_insn *, rtx *);
extern rtx gen_peephole2_7220 (rtx_insn *, rtx *);
extern rtx gen_peephole2_7221 (rtx_insn *, rtx *);
extern rtx gen_peephole2_7222 (rtx_insn *, rtx *);
extern rtx gen_peephole2_7223 (rtx_insn *, rtx *);



static int
recog_1 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L57159;
    case REG:
      goto L57160;
    default:
     break;
   }
 L56945: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L120;
    }
 L56963: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L569;
    }
 L56966: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == MEM)
    goto L587;
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L607;
    }
 L56989: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L1037;
    }
 L56992: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L1129;
    }
  goto ret0;

 L57159: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L474;
    }
  goto L56963;

 L474: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonmemory_no_elim_operand (x1, HImode))
    {
      operands[1] = x1;
      return 66;  /* *pushhi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57160: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 0) == 19)
    goto L1254;
 L57161: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L3438;
    }
  goto L56945;

 L1254: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 30)
    goto L1255;
  x1 = XEXP (x0, 0);
  goto L57161;

 L1255: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1256;
    }
  x1 = XEXP (x0, 0);
  goto L57161;

 L1256: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4805 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 173;  /* x86_fldcw_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57161;

 L3438: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57162;
  x1 = XEXP (x0, 0);
  goto L56945;

 L57162: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case AND:
      goto L3439;
    case IOR:
      goto L3445;
    case XOR:
      goto L3451;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3440;
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3441;
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3441: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 314;  /* *kandhi */
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3446;
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3446: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3447;
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3447: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 315;  /* *korhi */
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3452;
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3453;
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L3453: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 316;  /* *kxorhi */
    }
  x1 = XEXP (x0, 0);
  goto L56945;

 L120: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 25)
    goto L121;
  x1 = XEXP (x0, 0);
  goto L56963;

 L121: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case CCFPmode:
      goto L57165;
    case CCFPUmode:
      goto L57166;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57165: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case COMPARE:
      goto L122;
    case REG:
      goto L57168;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56963;

 L122: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57169;
    case DFmode:
      goto L57170;
    case XFmode:
      goto L57171;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57169: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L187;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode)
    goto L57173;
 L123: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L124;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57173: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, SFmode))
    {
      operands[3] = x3;
      goto L268;
    }
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L188;
    }
  goto L123;

 L268: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L57174;
    case SImode:
      goto L57175;
    default:
      break;
    }
  goto L123;

 L57174: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L269;
    }
  goto L123;

 L269: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1563 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 35;  /* *cmpsf_hi_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L123;

 L57175: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L293;
    }
  goto L123;

 L293: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1563 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 38;  /* *cmpsf_si_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L123;

 L188: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1496 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 25;  /* *cmpsf_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L123;

 L124: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1430 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 17;  /* *cmpsf_0_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57170: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L194;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode)
    goto L57177;
 L130: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L131;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57177: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, DFmode))
    {
      operands[3] = x3;
      goto L276;
    }
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L195;
    }
  goto L130;

 L276: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L57178;
    case SImode:
      goto L57179;
    default:
      break;
    }
  goto L130;

 L57178: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L277;
    }
  goto L130;

 L277: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1563 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 36;  /* *cmpdf_hi_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L130;

 L57179: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L301;
    }
  goto L130;

 L301: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1563 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 39;  /* *cmpdf_si_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L130;

 L195: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1496 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 26;  /* *cmpdf_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L130;

 L131: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1430 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 18;  /* *cmpdf_0_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57171: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L171;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L171: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == XFmode)
    goto L57181;
 L137: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L138;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57181: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, XFmode))
    {
      operands[3] = x3;
      goto L284;
    }
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L172;
    }
  goto L137;

 L284: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L57182;
    case SImode:
      goto L57183;
    default:
      break;
    }
  goto L137;

 L57182: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L285;
    }
  goto L137;

 L285: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1563 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 37;  /* *cmpxf_hi_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L137;

 L57183: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L309;
    }
  goto L137;

 L309: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1563 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 40;  /* *cmpxf_si_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L137;

 L172: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1463 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 23;  /* *cmpxf_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 1);
  goto L137;

 L138: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1430 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 19;  /* *cmpxf_0_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57168: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 18
      && 
#line 1604 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 47;  /* x86_fnstsw_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57166: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == COMPARE)
    goto L218;
  x1 = XEXP (x0, 0);
  goto L56963;

 L218: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57184;
    case DFmode:
      goto L57185;
    case XFmode:
      goto L57186;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57184: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L219;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L219: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L220;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L220: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1529 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 29;  /* *cmpusf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57185: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L226;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L226: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L227;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L227: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1529 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 30;  /* *cmpudf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L57186: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L233;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L233: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L234;
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L234: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1529 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 31;  /* *cmpuxf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56963;

 L569: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57187;
 L574: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L575;
    }
  x1 = XEXP (x0, 0);
  goto L56966;

 L57187: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57189;
    case FIX:
      goto L1015;
    default:
     break;
   }
  goto L574;

 L57189: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 87)
    goto L570;
  goto L574;

 L570: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L571;
    }
  goto L574;

 L571: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2416 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1])) && TARGET_AVX512F))
    {
      return 84;  /* kmovw */
    }
  x1 = XEXP (x0, 1);
  goto L574;

 L1015: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1016;
    }
  goto L574;

 L1016: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
	&& TARGET_SSE_MATH)
   && can_create_pseudo_p ()))
    {
      return 154;  /* fix_trunchi_fisttp_i387_1 */
    }
  x1 = XEXP (x0, 1);
  goto L574;

 L575: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 85;  /* *movhi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56966;

 L587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L588;
    }
  goto L56989;

 L588: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonmemory_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L589;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L589: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2586 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 0)))
    {
      return 88;  /* *movabshi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L607: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57190;
  x1 = XEXP (x0, 0);
  goto L56989;

 L57190: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L608;
    case SIGN_EXTRACT:
      goto L692;
    case ZERO_EXTEND:
      goto L832;
    case SIGN_EXTEND:
      goto L864;
    case MULT:
      goto L2675;
    case IOR:
      goto L3131;
    case AND:
      goto L3576;
    case NOT:
      goto L4029;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56989;

 L608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L609;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L609: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2600 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 1)))
    {
      return 92;  /* *movabshi_2 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L692: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ext_register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L693;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L693: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L694;
  x1 = XEXP (x0, 0);
  goto L56989;

 L694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    {
      return 104;  /* *movhi_extv_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L833;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L833: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 127;  /* zero_extendqihi2_and */
    }
 L838: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3707 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    {
      return 128;  /* *zero_extendqihi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L864: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      return 132;  /* extendqihi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2675: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode)
    goto L57199;
  x1 = XEXP (x0, 0);
  goto L56989;

 L57199: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SIGN_EXTEND:
      goto L2902;
    case ZERO_EXTEND:
      goto L2920;
    case REG:
    case SUBREG:
    case MEM:
      goto L57198;
    default:
      x1 = XEXP (x0, 0);
      goto L56989;
   }
 L57198: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L2676;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2902: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2903;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2903: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L2904;
  x1 = XEXP (x0, 0);
  goto L56989;

 L2904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2905;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2905: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 285;  /* *mulqihi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2921;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L2922;
  x1 = XEXP (x0, 0);
  goto L56989;

 L2922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2923;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2923: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 286;  /* *umulqihi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L2677;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L2677: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6568 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 273;  /* *mulhi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ASHIFT)
    goto L3132;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3132: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode)
    goto L57201;
  x1 = XEXP (x0, 0);
  goto L56989;

 L57201: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ZERO_EXTEND)
    goto L3133;
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4084;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3133: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == TRUNCATE)
    goto L3134;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3134: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MOD)
    goto L3135;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3135: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, HImode))
    {
      operands[1] = x6;
      goto L3136;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3136: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode)
    goto L57203;
  x1 = XEXP (x0, 0);
  goto L56989;

 L57203: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x6))
    {
    case SIGN_EXTEND:
      goto L3137;
    case ZERO_EXTEND:
      goto L3332;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3137: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, QImode))
    {
      operands[2] = x7;
      goto L3138;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3139;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L3140;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3140: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == TRUNCATE)
    goto L3141;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3141: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == DIV)
    goto L3142;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3142: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L3143;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3143: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L3144;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3144: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2])
      && 
#line 7258 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 294;  /* divmodhiqi3 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3332: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, QImode))
    {
      operands[2] = x7;
      goto L3333;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3333: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3334;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3334: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L3335;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3335: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == TRUNCATE)
    goto L3336;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3336: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == DIV)
    goto L3337;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3337: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L3338;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3338: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L3339;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3339: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2])
      && 
#line 7425 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 301;  /* udivmodhiqi3 */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L4084: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4085;
  x1 = XEXP (x0, 0);
  goto L56989;

 L4085: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L4086;
  x1 = XEXP (x0, 0);
  goto L56989;

 L4086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4087;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L4087: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8501 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 362;  /* kunpckhi */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3576: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == NOT)
    goto L3577;
  x1 = XEXP (x0, 0);
  goto L56989;

 L3577: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L3578;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3579;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L3579: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 328;  /* kandnhi */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L4029: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == XOR)
    goto L4030;
  x1 = XEXP (x0, 0);
  goto L56989;

 L4030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4031;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L4031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L4032;
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L4032: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8426 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 357;  /* kxnorhi */
    }
  x1 = XEXP (x0, 0);
  goto L56989;

 L1037: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57205;
  x1 = XEXP (x0, 0);
  goto L56992;

 L57205: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FIX:
      goto L1038;
    case UNSPEC:
      goto L57207;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56992;

 L1038: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1039;
    }
  x1 = XEXP (x0, 0);
  goto L56992;

 L1039: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4605 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
	&& TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 157;  /* fix_trunchi_i387_fisttp */
    }
  x1 = XEXP (x0, 0);
  goto L56992;

 L57207: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 28)
    goto L1251;
  x1 = XEXP (x0, 0);
  goto L56992;

 L1251: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 19
      && 
#line 4794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 172;  /* x86_fnstcw_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56992;

 L1129: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57208;
  goto ret0;

 L57208: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FIX:
      goto L1130;
    case PLUS:
      goto L1481;
    case MINUS:
      goto L2043;
    case AND:
      goto L3515;
    case IOR:
      goto L3820;
    case XOR:
      goto L3834;
    case NEG:
      goto L4518;
    case NOT:
      goto L4921;
    case ASHIFT:
      goto L5096;
    case LSHIFTRT:
      goto L5507;
    case ASHIFTRT:
      goto L5521;
    case ROTATE:
      goto L6017;
    case ROTATERT:
      goto L6031;
    default:
     break;
   }
  goto ret0;

 L1130: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1131;
    }
  goto ret0;

 L1131: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 163;  /* *fix_trunchi_i387_1 */
    }
  goto ret0;

 L1481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L2386;
    }
  goto ret0;

 L2386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L2387;
  if (general_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1483;
    }
  goto ret0;

 L2387: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2388;
    }
  goto ret0;

 L2388: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2389;
  goto ret0;

 L2389: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2390;
  goto ret0;

 L2390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L2391;
    }
  goto ret0;

 L2391: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 257;  /* *addhi3_carry */
    }
  goto ret0;

 L1483: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5360 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 199;  /* *addhi_1 */
    }
  goto ret0;

 L2043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L2408;
    }
  goto ret0;

 L2408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L2409;
  if (general_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L2045;
    }
  goto ret0;

 L2409: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2410;
    }
  goto ret0;

 L2410: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2411;
  goto ret0;

 L2411: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2412;
  goto ret0;

 L2412: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L2413;
    }
  goto ret0;

 L2413: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 258;  /* *subhi3_carry */
    }
  goto ret0;

 L2045: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 235;  /* *subhi_1 */
    }
  goto ret0;

 L3515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3516;
    }
  goto ret0;

 L3516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3517;
    }
  goto ret0;

 L3517: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7881 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 324;  /* *andhi_1 */
    }
  goto ret0;

 L3820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3821;
    }
  goto ret0;

 L3821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3822;
    }
  goto ret0;

 L3822: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8348 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 342;  /* *iorhi_1 */
    }
  goto ret0;

 L3834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3835;
    }
  goto ret0;

 L3835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L3836;
    }
  goto ret0;

 L3836: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8348 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 343;  /* *xorhi_1 */
    }
  goto ret0;

 L4518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L4519;
    }
  goto ret0;

 L4519: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 385;  /* *neghi2_1 */
    }
  goto ret0;

 L4921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L4922;
    }
  goto ret0;

 L4922: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NOT, HImode, operands)))
    {
      return 424;  /* *one_cmplhi2_1 */
    }
  goto ret0;

 L5096: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L5097;
    }
  goto ret0;

 L5097: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5098;
    }
  goto ret0;

 L5098: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 437;  /* *ashlhi3_1 */
    }
  goto ret0;

 L5507: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L5508;
    }
  goto ret0;

 L5508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5509;
    }
  goto ret0;

 L5509: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 464;  /* *lshrhi3_1 */
    }
  goto ret0;

 L5521: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L5522;
    }
  goto ret0;

 L5522: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5523;
    }
  goto ret0;

 L5523: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 465;  /* *ashrhi3_1 */
    }
  goto ret0;

 L6017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L6018;
    }
  goto ret0;

 L6018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L6019;
    }
  goto ret0;

 L6019: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 497;  /* *rotlhi3_1 */
    }
  goto ret0;

 L6031: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L6032;
    }
  goto ret0;

 L6032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L6033;
    }
  goto ret0;

 L6033: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, HImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 498;  /* *rotrhi3_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_2 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L57235;
    case REG:
      goto L57236;
    default:
     break;
   }
 L56954: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L495;
    }
 L56956: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L525;
    }
 L56961: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L786;
    }
 L56968: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == MEM)
    goto L597;
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L617;
    }
 L56991: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L1063;
    }
 L56994: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L1153;
    }
 L57005: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L5343;
    }
 L57006: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L5450;
    }
  goto ret0;

 L57235: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L465;
    }
  goto L56954;

 L465: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_no_elim_operand (x1, DImode))
    {
      operands[1] = x1;
      return 63;  /* *pushdi2 */
    }
 L517: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L518;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L518: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 74;  /* *pushfldi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L57236: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L3474;
    }
  goto L56954;

 L3474: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57237;
  x1 = XEXP (x0, 0);
  goto L56954;

 L57237: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case AND:
      goto L3475;
    case IOR:
      goto L3481;
    case XOR:
      goto L3487;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L3476;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L3477;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3477: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F) && 
#line 934 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)))
    {
      return 320;  /* *kanddi */
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L3482;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L3483;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F) && 
#line 934 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)))
    {
      return 321;  /* *kordi */
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L3488;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L3489;
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L3489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F) && 
#line 934 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)))
    {
      return 322;  /* *kxordi */
    }
  x1 = XEXP (x0, 0);
  goto L56954;

 L495: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (pop_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L496;
    }
  x1 = XEXP (x0, 0);
  goto L56956;

 L496: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 70;  /* *popdi1 */
    }
  x1 = XEXP (x0, 0);
  goto L56956;

 L525: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (pop_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L526;
    }
  x1 = XEXP (x0, 0);
  goto L56961;

 L526: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 76;  /* *popfldi1 */
    }
  x1 = XEXP (x0, 0);
  goto L56961;

 L786: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57240;
 L561: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L562;
    }
  x1 = XEXP (x0, 0);
  goto L56968;

 L57240: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case ZERO_EXTEND:
      goto L787;
    case SIGN_EXTEND:
      goto L851;
    case FIX:
      goto L1025;
    default:
     break;
   }
  goto L561;

 L787: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_zext_operand (x2, SImode))
    {
      operands[1] = x2;
      return 122;  /* *zero_extendsidi2 */
    }
  goto L561;

 L851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L852;
    }
  goto L561;

 L852: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 129;  /* extendsidi2_1 */
    }
  x1 = XEXP (x0, 1);
  goto L561;

 L1025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1026;
    }
  goto L561;

 L1026: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
	&& TARGET_SSE_MATH)
   && can_create_pseudo_p ()))
    {
      return 156;  /* fix_truncdi_fisttp_i387_1 */
    }
  x1 = XEXP (x0, 1);
  goto L561;

 L562: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2113 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 82;  /* *movdi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56968;

 L597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L598;
    }
  goto L56991;

 L598: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonmemory_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L599;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L599: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2586 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 0)))
    {
      return 90;  /* *movabsdi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L617: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57243;
  x1 = XEXP (x0, 0);
  goto L56991;

 L57243: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L618;
    case MULT:
      goto L2865;
    case NOT:
      goto L4061;
    case IOR:
      goto L4101;
    case ASHIFT:
      goto L4983;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56991;

 L618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L619;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L619: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2600 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 1)))
    {
      return 94;  /* *movabsdi_2 */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2865: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode)
    goto L57248;
  x1 = XEXP (x0, 0);
  goto L56991;

 L57248: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L2866;
    case SIGN_EXTEND:
      goto L2884;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2866: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L2867;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L2868;
  x1 = XEXP (x0, 0);
  goto L56991;

 L2868: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2869;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2869: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6865 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 283;  /* *umulsidi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2884: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L2885;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L2886;
  x1 = XEXP (x0, 0);
  goto L56991;

 L2886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2887;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L2887: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6916 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 284;  /* *mulsidi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4061: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == XOR)
    goto L4062;
  x1 = XEXP (x0, 0);
  goto L56991;

 L4062: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4063;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L4064;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4064: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8443 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 359;  /* kxnordi */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4101: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == ASHIFT)
    goto L4102;
  x1 = XEXP (x0, 0);
  goto L56991;

 L4102: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4103;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4103: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L4104;
  x1 = XEXP (x0, 0);
  goto L56991;

 L4104: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L4105;
  x1 = XEXP (x0, 0);
  goto L56991;

 L4105: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L4106;
  x1 = XEXP (x0, 0);
  goto L56991;

 L4106: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L4107;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4107: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8525 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW))
    {
      return 364;  /* kunpckdi */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (reg_or_pm1_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L4984;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L4985;
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L4985: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 430;  /* *ashldi3_doubleword */
    }
  x1 = XEXP (x0, 0);
  goto L56991;

 L1063: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == FIX)
    goto L1064;
  x1 = XEXP (x0, 0);
  goto L56994;

 L1064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1065;
    }
  x1 = XEXP (x0, 0);
  goto L56994;

 L1065: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4605 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
	&& TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 159;  /* fix_truncdi_i387_fisttp */
    }
  x1 = XEXP (x0, 0);
  goto L56994;

 L1153: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57250;
  x1 = XEXP (x0, 0);
  goto L57005;

 L57250: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FIX:
      goto L1154;
    case PLUS:
      goto L1392;
    case MINUS:
      goto L2001;
    case IOR:
      goto L3792;
    case XOR:
      goto L3806;
    case NEG:
      goto L4482;
    case NOT:
      goto L4916;
    case ASHIFT:
      goto L5045;
    case LSHIFTRT:
      goto L5307;
    case ASHIFTRT:
      goto L5327;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57005;

 L1154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1155;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L1155: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 165;  /* *fix_truncdi_i387_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L1392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L2474;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2474: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L2475;
  if (x86_64_general_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1394;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2475: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2476;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2476: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2477;
  x1 = XEXP (x0, 0);
  goto L57005;

 L2477: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2478;
  x1 = XEXP (x0, 0);
  goto L57005;

 L2478: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L2479;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2479: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 261;  /* *adddi3_carry */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L1394: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5208 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 192;  /* *adddi3_doubleword */
    }
 L1469: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5257 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 198;  /* *adddi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2001: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L2496;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L2497;
  if (x86_64_general_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L2003;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2497: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2498;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2498: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2499;
  x1 = XEXP (x0, 0);
  goto L57005;

 L2499: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2500;
  x1 = XEXP (x0, 0);
  goto L57005;

 L2500: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L2501;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2501: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 262;  /* *subdi3_carry */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L2003: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6149 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, SImode, operands)) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 232;  /* *subdi3_doubleword */
    }
 L2073: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 237;  /* *subdi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L3792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L3793;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L3793: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L3794;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L3794: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 340;  /* *iordi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L3806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L3807;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L3807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L3808;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L3808: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 341;  /* *xordi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L4482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L4483;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L4483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8743 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, DImode, operands)) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 382;  /* *negdi2_doubleword */
    }
 L4543: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 387;  /* *negdi2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L4916: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L4917;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L4917: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9126 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NOT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 423;  /* *one_cmpldi2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5045: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5046;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5047;
 L5083: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5084;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5047: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5048;
  goto L5083;

 L5048: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5049;
    }
  goto L5083;

 L5049: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5050;
    }
  goto L5083;

 L5050: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9388 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 433;  /* *ashldi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5083;

 L5084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9411 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 436;  /* *ashldi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5308;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5309;
  x1 = XEXP (x0, 0);
  goto L57005;

 L5309: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5310;
  x1 = XEXP (x0, 0);
  goto L57005;

 L5310: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5311;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5311: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5312;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5312: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 450;  /* *lshrdi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5328;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5329;
  x1 = XEXP (x0, 0);
  goto L57005;

 L5329: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5330;
  x1 = XEXP (x0, 0);
  goto L57005;

 L5330: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5331;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5331: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5332;
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5332: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 451;  /* *ashrdi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57005;

 L5343: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57260;
  x1 = XEXP (x0, 0);
  goto L57006;

 L57260: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case LSHIFTRT:
      goto L5344;
    case ASHIFTRT:
      goto L5358;
    case ROTATE:
      goto L5897;
    case ROTATERT:
      goto L5913;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5345;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5346;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5346: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 452;  /* *lshrdi3_doubleword */
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5359;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5360;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5360: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 453;  /* *ashrdi3_doubleword */
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5898;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_1_to_31_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5899;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5899: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 488;  /* ix86_rotldi3_doubleword */
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5913: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5914;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5914: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_1_to_31_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5915;
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5915: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 489;  /* ix86_rotrdi3_doubleword */
    }
  x1 = XEXP (x0, 0);
  goto L57006;

 L5450: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57264;
  goto ret0;

 L57264: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case LSHIFTRT:
      goto L5451;
    case ASHIFTRT:
      goto L5465;
    case ROTATE:
      goto L5858;
    case ROTATERT:
      goto L5878;
    default:
     break;
   }
  goto ret0;

 L5451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5452;
    }
  goto ret0;

 L5452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5453;
    }
  goto ret0;

 L5453: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 460;  /* *lshrdi3_1 */
    }
  goto ret0;

 L5465: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5466;
    }
  goto ret0;

 L5466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5467;
    }
  goto ret0;

 L5467: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 461;  /* *ashrdi3_1 */
    }
  goto ret0;

 L5858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5859;
    }
  goto ret0;

 L5859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5860;
 L5962: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5963;
    }
  goto ret0;

 L5860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5861;
  goto L5962;

 L5861: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5862;
    }
  goto L5962;

 L5862: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5863;
    }
  goto L5962;

 L5863: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 486;  /* *rotldi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5962;

 L5963: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 493;  /* *rotldi3_1 */
    }
  goto ret0;

 L5878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L5879;
    }
  goto ret0;

 L5879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5880;
 L5976: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5977;
    }
  goto ret0;

 L5880: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5881;
  goto L5976;

 L5881: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5882;
    }
  goto L5976;

 L5882: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5883;
    }
  goto L5976;

 L5883: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 487;  /* *rotrdi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5976;

 L5977: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 494;  /* *rotrdi3_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_3 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L57268;
    case ZERO_EXTRACT:
      goto L722;
    default:
     break;
   }
 L56953: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L491;
    }
 L56955: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L521;
    }
 L56957: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L535;
    }
 L56962: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L565;
    }
 L56967: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == MEM)
    goto L592;
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L612;
    }
 L56988: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L1019;
    }
 L56990: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L1050;
    }
 L56993: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L1141;
    }
  goto ret0;

 L57268: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L468;
    }
  goto L56953;

 L468: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_no_elim_operand (x1, SImode))
    {
      operands[1] = x1;
      return 64;  /* *pushsi2 */
    }
 L513: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L514;
    }
  x1 = XEXP (x0, 0);
  goto L56953;

 L514: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 73;  /* *pushflsi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56953;

 L722: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ext_register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L723;
    }
  goto ret0;

 L723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L724;
  goto ret0;

 L724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L731;
  goto ret0;

 L731: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57269;
 L725: ATTRIBUTE_UNUSED_LABEL
  if (general_x64nomem_operand (x1, SImode))
    {
      operands[1] = x1;
      return 109;  /* movsi_insv_1 */
    }
  goto ret0;

 L57269: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case LSHIFTRT:
      goto L732;
    case PLUS:
      goto L1771;
    case AND:
      goto L3666;
    case IOR:
      goto L4300;
    case XOR:
      goto L4326;
    default:
     break;
   }
  goto L725;

 L732: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L733;
    }
  goto L725;

 L733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    {
      return 110;  /* *movqi_insv_2 */
    }
  goto L725;

 L1771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L1772;
  goto L725;

 L1772: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1773;
    }
  goto L725;

 L1773: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1774;
  goto L725;

 L1774: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1804;
  goto L725;

 L1804: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L1805;
  if (general_x64nomem_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L1776;
    }
  goto L725;

 L1805: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L1806;
    }
  goto L725;

 L1806: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1807;
  goto L725;

 L1807: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 218;  /* *addqi_ext_2 */
    }
  goto L725;

 L1776: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 217;  /* addqi_ext_1 */
    }
  x1 = XEXP (x0, 1);
  goto L725;

 L3666: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L3667;
  goto L725;

 L3667: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L3668;
    }
  goto L725;

 L3668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3669;
  goto L725;

 L3669: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3719;
  goto L725;

 L3719: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L57274;
 L3670: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L3671;
    }
  goto L725;

 L57274: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L3720;
    case ZERO_EXTRACT:
      goto L3750;
    default:
     break;
   }
  goto L3670;

 L3720: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_x64nomem_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L3721;
    }
  goto L3670;

 L3721: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 336;  /* *andqi_ext_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L3670;

 L3750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L3751;
    }
  goto L3670;

 L3751: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3752;
  goto L3670;

 L3752: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 337;  /* *andqi_ext_2 */
    }
  goto L3670;

 L3671: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 334;  /* andqi_ext_0 */
    }
  x1 = XEXP (x0, 1);
  goto L725;

 L4300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L4301;
  goto L725;

 L4301: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L4302;
    }
  goto L725;

 L4302: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4303;
  goto L725;

 L4303: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4357;
  goto L725;

 L4357: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L57276;
 L4304: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L4305;
    }
  goto L725;

 L57276: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L4358;
    case ZERO_EXTRACT:
      goto L4416;
    default:
     break;
   }
  goto L4304;

 L4358: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_x64nomem_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4359;
    }
  goto L4304;

 L4359: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8615 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 377;  /* *iorqi_ext_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L4304;

 L4416: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L4417;
    }
  goto L4304;

 L4417: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4418;
  goto L4304;

 L4418: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)]
      && 
#line 8634 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 379;  /* *iorqi_ext_2 */
    }
  goto L4304;

 L4305: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8596 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 375;  /* *iorqi_ext_0 */
    }
  x1 = XEXP (x0, 1);
  goto L725;

 L4326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L4327;
  goto L725;

 L4327: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L4328;
    }
  goto L725;

 L4328: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4329;
  goto L725;

 L4329: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4385;
  goto L725;

 L4385: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L57278;
 L4330: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L4331;
    }
  goto L725;

 L57278: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L4386;
    case ZERO_EXTRACT:
      goto L4447;
    default:
     break;
   }
  goto L4330;

 L4386: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_x64nomem_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4387;
    }
  goto L4330;

 L4387: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8615 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 378;  /* *xorqi_ext_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L4330;

 L4447: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L4448;
    }
  goto L4330;

 L4448: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4449;
  goto L4330;

 L4449: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)]
      && 
#line 8634 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 380;  /* *xorqi_ext_2 */
    }
  goto L4330;

 L4331: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8596 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 376;  /* *xorqi_ext_0 */
    }
  x1 = XEXP (x0, 1);
  goto L725;

 L491: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (pop_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L492;
    }
  x1 = XEXP (x0, 0);
  goto L56955;

 L492: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 69;  /* *popsi1 */
    }
  x1 = XEXP (x0, 0);
  goto L56955;

 L521: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (pop_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L522;
    }
  x1 = XEXP (x0, 0);
  goto L56957;

 L522: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 75;  /* *popflsi1 */
    }
  x1 = XEXP (x0, 0);
  goto L56957;

 L535: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const0_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L536;
    }
 L545: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L546;
    }
  x1 = XEXP (x0, 0);
  goto L56962;

 L536: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1944 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 77;  /* *movsi_xor */
    }
  x1 = XEXP (x0, 1);
  goto L545;

 L546: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1954 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && operands[1] == constm1_rtx)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 78;  /* *movsi_or */
    }
  x1 = XEXP (x0, 0);
  goto L56962;

 L565: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L566;
    }
  x1 = XEXP (x0, 0);
  goto L56967;

 L566: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2287 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 83;  /* *movsi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56967;

 L592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L593;
    }
  goto L56988;

 L593: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonmemory_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L594;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L594: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2586 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 0)))
    {
      return 89;  /* *movabssi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L612: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57280;
  x1 = XEXP (x0, 0);
  goto L56988;

 L57280: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L613;
    case SIGN_EXTRACT:
      goto L698;
    case ZERO_EXTRACT:
      goto L710;
    case ZERO_EXTEND:
      goto L798;
    case SIGN_EXTEND:
      goto L856;
    case FIX:
      goto L1005;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56988;

 L613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L614;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L614: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2600 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 1)))
    {
      return 93;  /* *movabssi_2 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ext_register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L699;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L700;
  x1 = XEXP (x0, 0);
  goto L56988;

 L700: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    {
      return 105;  /* *movsi_extv_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L710: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ext_register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L711;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L712;
  x1 = XEXP (x0, 0);
  goto L56988;

 L712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    {
      return 107;  /* *movsi_extzv_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L798: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L57286;
    case HImode:
      goto L57287;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L57286: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L799;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L799: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3635 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 123;  /* zero_extendqisi2_and */
    }
 L816: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    {
      return 125;  /* *zero_extendqisi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L57287: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L811;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L811: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3635 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 124;  /* zero_extendhisi2_and */
    }
 L821: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    {
      return 126;  /* *zero_extendhisi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L57288;
    case QImode:
      goto L57289;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L57288: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      return 130;  /* extendhisi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L57289: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      return 131;  /* extendqisi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L1005: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57290;
    case DFmode:
      goto L57291;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L57290: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L1006;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L1006: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4548 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode)
   && (!TARGET_FISTTP || TARGET_SSE_MATH)))
    {
      return 152;  /* fix_truncsfsi_sse */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L57291: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L1011;
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L1011: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4548 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode)
   && (!TARGET_FISTTP || TARGET_SSE_MATH)))
    {
      return 153;  /* fix_truncdfsi_sse */
    }
  x1 = XEXP (x0, 0);
  goto L56988;

 L1019: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == FIX)
    goto L1020;
  x1 = XEXP (x0, 0);
  goto L56990;

 L1020: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1021;
    }
  x1 = XEXP (x0, 0);
  goto L56990;

 L1021: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
	&& TARGET_SSE_MATH)
   && can_create_pseudo_p ()))
    {
      return 155;  /* fix_truncsi_fisttp_i387_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56990;

 L1050: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == FIX)
    goto L1051;
  x1 = XEXP (x0, 0);
  goto L56993;

 L1051: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1052;
    }
  x1 = XEXP (x0, 0);
  goto L56993;

 L1052: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4605 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
	&& TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 158;  /* fix_truncsi_i387_fisttp */
    }
  x1 = XEXP (x0, 0);
  goto L56993;

 L1141: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == FIX)
    goto L1142;
  goto ret0;

 L1142: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L1143;
    }
  goto ret0;

 L1143: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 164;  /* *fix_truncsi_i387_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_4 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L57292;
    case REG:
      goto L57293;
    default:
     break;
   }
 L56964: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L1494;
    }
 L56965: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == MEM)
    goto L582;
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L602;
    }
 L56973: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_x64nomem_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L703;
    }
  goto ret0;

 L57292: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L471;
    }
  goto L56964;

 L471: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonmemory_no_elim_operand (x1, QImode))
    {
      operands[1] = x1;
      return 65;  /* *pushqi2 */
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L57293: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L3420;
    }
  goto L56964;

 L3420: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L57294;
  x1 = XEXP (x0, 0);
  goto L56964;

 L57294: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case AND:
      goto L3421;
    case IOR:
      goto L3427;
    case XOR:
      goto L3433;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3422;
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3423;
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3423: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 311;  /* *kandqi */
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3428;
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3429;
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3429: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 312;  /* *korqi */
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3434;
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3434: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3435;
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L3435: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 313;  /* *kxorqi */
    }
  x1 = XEXP (x0, 0);
  goto L56964;

 L1494: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L57297;
 L578: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L579;
    }
  x1 = XEXP (x0, 0);
  goto L56965;

 L57297: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L1495;
    case MINUS:
      goto L2029;
    case AND:
      goto L3529;
    case IOR:
      goto L3848;
    case XOR:
      goto L3862;
    case NEG:
      goto L4506;
    case NOT:
      goto L4926;
    case ASHIFT:
      goto L5110;
    case LSHIFTRT:
      goto L5479;
    case ASHIFTRT:
      goto L5493;
    case ROTATE:
      goto L5989;
    case ROTATERT:
      goto L6003;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case GEU:
    case GTU:
    case LEU:
    case LTU:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L57309;
    default:
      goto L578;
   }
 L57309: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x1, QImode))
    {
      operands[1] = x1;
      goto L6103;
    }
  goto L578;

 L1495: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L2342;
    }
  goto L578;

 L2342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L2343;
  if (general_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L1497;
    }
  goto L578;

 L2343: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2344;
    }
  goto L578;

 L2344: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2345;
  goto L578;

 L2345: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2346;
  goto L578;

 L2346: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2347;
    }
  goto L578;

 L2347: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 255;  /* *addqi3_carry */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L1497: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5410 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 200;  /* *addqi_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L2029: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L2364;
    }
  goto L578;

 L2364: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L2365;
  if (general_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L2031;
    }
  goto L578;

 L2365: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2366;
    }
  goto L578;

 L2366: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2367;
  goto L578;

 L2367: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2368;
  goto L578;

 L2368: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2369;
    }
  goto L578;

 L2369: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 256;  /* *subqi3_carry */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L2031: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 234;  /* *subqi_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L3529: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3530;
    }
  goto L578;

 L3530: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3531;
    }
  goto L578;

 L3531: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7912 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 325;  /* *andqi_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L3848: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3849;
    }
  goto L578;

 L3849: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3850;
    }
  goto L578;

 L3850: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8362 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 344;  /* *iorqi_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L3862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3863;
    }
  goto L578;

 L3863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3864;
    }
  goto L578;

 L3864: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8362 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 345;  /* *xorqi_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L4506: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L4507;
    }
  goto L578;

 L4507: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 384;  /* *negqi2_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L4926: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L4927;
    }
  goto L578;

 L4927: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9151 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NOT, QImode, operands)))
    {
      return 425;  /* *one_cmplqi2_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L5110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5111;
    }
  goto L578;

 L5111: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5112;
    }
  goto L578;

 L5112: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9586 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 438;  /* *ashlqi3_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L5479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5480;
    }
  goto L578;

 L5480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5481;
    }
  goto L578;

 L5481: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 462;  /* *lshrqi3_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L5493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5494;
    }
  goto L578;

 L5494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5495;
    }
  goto L578;

 L5495: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 463;  /* *ashrqi3_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L5989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5990;
    }
  goto L578;

 L5990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5991;
    }
  goto L578;

 L5991: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 495;  /* *rotlqi3_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L6003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L6004;
    }
  goto L578;

 L6004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L6005;
    }
  goto L578;

 L6005: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, QImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 496;  /* *rotrqi3_1 */
    }
  x1 = XEXP (x0, 1);
  goto L578;

 L6103: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6104;
  goto L578;

 L6104: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 505;  /* *setcc_qi */
    }
  goto L578;

 L579: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2503 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 86;  /* *movqi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56965;

 L582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L583;
    }
  goto L56973;

 L583: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonmemory_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L584;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L584: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2586 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 0)))
    {
      return 87;  /* *movabsqi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L602: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L57310;
  x1 = XEXP (x0, 0);
  goto L56973;

 L57310: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L603;
    case MULT:
      goto L2689;
    case AND:
      goto L3560;
    case NOT:
      goto L4013;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L56973;

 L603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x86_64_movabs_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L604;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L604: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2600 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64 && ix86_check_movabs (insn, 1)))
    {
      return 91;  /* *movabsqi_2 */
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L2689: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L2690;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L2690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L2691;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L2691: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6598 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 274;  /* *mulqi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L3560: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == NOT)
    goto L3561;
  x1 = XEXP (x0, 0);
  goto L56973;

 L3561: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3562;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L3562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L3563;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L3563: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 327;  /* kandnqi */
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L4013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == XOR)
    goto L4014;
  x1 = XEXP (x0, 0);
  goto L56973;

 L4014: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L4015;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L4015: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4016;
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L4016: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8426 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 356;  /* kxnorqi */
    }
  x1 = XEXP (x0, 0);
  goto L56973;

 L703: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L57314;
  goto ret0;

 L57314: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case SIGN_EXTRACT:
      goto L704;
    case SUBREG:
      goto L57316;
    default:
     break;
   }
  goto ret0;

 L704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ext_register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L705;
    }
  goto ret0;

 L705: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L706;
  goto ret0;

 L706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    {
      return 106;  /* *movqi_extv_1 */
    }
  goto ret0;

 L57316: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 0)
    goto L716;
  goto ret0;

 L716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L717;
  goto ret0;

 L717: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L718;
    }
  goto ret0;

 L718: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L719;
  goto ret0;

 L719: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    {
      return 108;  /* *movqi_extzv_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_5 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L1453;
    case MINUS:
      goto L2057;
    case AND:
      goto L3501;
    case IOR:
      goto L3764;
    case XOR:
      goto L3778;
    case NEG:
      goto L4530;
    case NOT:
      goto L4911;
    case ASHIFT:
      goto L5025;
    case LSHIFTRT:
      goto L5267;
    case ASHIFTRT:
      goto L5287;
    case ROTATE:
      goto L5818;
    case ROTATERT:
      goto L5838;
    default:
     break;
   }
  goto ret0;

 L1453: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L2430;
    }
  goto ret0;

 L2430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L2431;
  if (x86_64_general_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L1455;
    }
  goto ret0;

 L2431: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2432;
    }
  goto ret0;

 L2432: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2433;
  goto ret0;

 L2433: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2434;
  goto ret0;

 L2434: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2435;
    }
  goto ret0;

 L2435: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 259;  /* *addsi3_carry */
    }
  goto ret0;

 L1455: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5257 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 197;  /* *addsi_1 */
    }
  goto ret0;

 L2057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L2452;
    }
  goto ret0;

 L2452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L2453;
  if (x86_64_general_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L2059;
    }
  goto ret0;

 L2453: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L2454;
    }
  goto ret0;

 L2454: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L2455;
  goto ret0;

 L2455: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2456;
  goto ret0;

 L2456: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2457;
    }
  goto ret0;

 L2457: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 260;  /* *subsi3_carry */
    }
  goto ret0;

 L2059: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 236;  /* *subsi_1 */
    }
  goto ret0;

 L3501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3502;
    }
  goto ret0;

 L3502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L3503;
    }
  goto ret0;

 L3503: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7838 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 323;  /* *andsi_1 */
    }
  goto ret0;

 L3764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L57415;
  goto ret0;

 L57415: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFT:
      goto L5004;
    case LSHIFTRT:
      goto L5379;
    case REG:
    case SUBREG:
    case MEM:
      goto L57414;
    default:
      goto ret0;
   }
 L57414: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3765;
    }
  goto ret0;

 L5004: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L5005;
  goto ret0;

 L5005: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5006;
    }
  goto ret0;

 L5006: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L5007;
  goto ret0;

 L5007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5008;
    }
  goto ret0;

 L5008: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MINUS)
    goto L5009;
  goto ret0;

 L5009: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L5010;
  goto ret0;

 L5010: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[2])
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 431;  /* x86_shld */
    }
  goto ret0;

 L5379: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L5380;
  goto ret0;

 L5380: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5381;
    }
  goto ret0;

 L5381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ASHIFT)
    goto L5382;
  goto ret0;

 L5382: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5383;
    }
  goto ret0;

 L5383: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MINUS)
    goto L5384;
  goto ret0;

 L5384: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L5385;
  goto ret0;

 L5385: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[2])
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 454;  /* x86_shrd */
    }
  goto ret0;

 L3765: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L3766;
    }
  goto ret0;

 L3766: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 338;  /* *iorsi_1 */
    }
  goto ret0;

 L3778: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3779;
    }
  goto ret0;

 L3779: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L3780;
    }
  goto ret0;

 L3780: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 339;  /* *xorsi_1 */
    }
  goto ret0;

 L4530: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L4531;
    }
  goto ret0;

 L4531: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 386;  /* *negsi2_1 */
    }
  goto ret0;

 L4911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L4912;
    }
  goto ret0;

 L4912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9126 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NOT, SImode, operands)))
    {
      return 422;  /* *one_cmplsi2_1 */
    }
  goto ret0;

 L5025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5026;
    }
  goto ret0;

 L5026: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5027;
 L5069: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5070;
    }
  goto ret0;

 L5027: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5028;
  goto L5069;

 L5028: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5029;
    }
  goto L5069;

 L5029: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5030;
    }
  goto L5069;

 L5030: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9388 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 432;  /* *ashlsi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5069;

 L5070: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9411 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 435;  /* *ashlsi3_1 */
    }
  goto ret0;

 L5267: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5268;
    }
  goto ret0;

 L5268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5269;
 L5424: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5425;
    }
  goto ret0;

 L5269: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5270;
  goto L5424;

 L5270: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5271;
    }
  goto L5424;

 L5271: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5272;
    }
  goto L5424;

 L5272: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 448;  /* *lshrsi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5424;

 L5425: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 458;  /* *lshrsi3_1 */
    }
  goto ret0;

 L5287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5288;
    }
  goto ret0;

 L5288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5289;
  if (const_int_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5399;
    }
 L5438: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5439;
    }
  goto ret0;

 L5289: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5290;
  goto L5438;

 L5290: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5291;
    }
  goto L5438;

 L5291: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5292;
    }
  goto L5438;

 L5292: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 449;  /* *ashrsi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5438;

 L5399: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9982 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[2]) == 31
   && (TARGET_USE_CLTD || optimize_function_for_size_p (cfun))
   && ix86_binary_operator_ok (ASHIFTRT, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 455;  /* ashrsi3_cvt */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5438;

 L5439: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 459;  /* *ashrsi3_1 */
    }
  goto ret0;

 L5818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5819;
    }
  goto ret0;

 L5819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5820;
 L5934: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5935;
    }
  goto ret0;

 L5820: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5821;
  goto L5934;

 L5821: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5822;
    }
  goto L5934;

 L5822: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5823;
    }
  goto L5934;

 L5823: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 484;  /* *rotlsi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5934;

 L5935: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 491;  /* *rotlsi3_1 */
    }
  goto ret0;

 L5838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5839;
    }
  goto ret0;

 L5839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L5840;
 L5948: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5949;
    }
  goto ret0;

 L5840: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L5841;
  goto L5948;

 L5841: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L5842;
    }
  goto L5948;

 L5842: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L5843;
    }
  goto L5948;

 L5843: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 485;  /* *rotrsi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L5948;

 L5949: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, SImode, operands))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 492;  /* *rotrsi3_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_6 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L57432;
    case HImode:
      goto L57433;
    case SImode:
      goto L57434;
    case DImode:
      goto L57435;
    default:
      break;
    }
  goto ret0;

 L57432: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case NEG:
      goto L1580;
    case PLUS:
      goto L1694;
    case AND:
      goto L3344;
    case IOR:
      goto L4151;
    case XOR:
      goto L4169;
    case ASHIFT:
      goto L5196;
    case LSHIFTRT:
      goto L5675;
    case ASHIFTRT:
      goto L5693;
    case REG:
    case SUBREG:
    case MEM:
      goto L57436;
    default:
      goto ret0;
   }
 L57436: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L1647;
    }
  goto ret0;

 L1580: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L1581;
    }
  goto ret0;

 L1581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L1582;
    }
  goto ret0;

 L1582: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 206;  /* *addqi_3 */
    }
  goto ret0;

 L1694: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L1695;
    }
  goto ret0;

 L1695: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L1696;
    }
  goto ret0;

 L1696: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 213;  /* *addqi_5 */
    }
  goto ret0;

 L3344: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[0] = x3;
      goto L3345;
    }
  goto ret0;

 L3345: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3346;
    }
  goto ret0;

 L3346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L57468;
  goto ret0;

 L57468: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x2, 0) == 0LL)
    goto L57470;
  goto ret0;

 L57470: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7501 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))
    && ix86_match_ccmode (insn,
 			 CONST_INT_P (operands[1])
 			 && INTVAL (operands[1]) >= 0 ? CCNOmode : CCZmode)))
    {
      return 302;  /* *testqi_1_maybe_si */
    }
 L57471: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7526 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 303;  /* *testqi_1 */
    }
  goto ret0;

 L4151: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L4152;
    }
  goto ret0;

 L4152: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4153;
    }
  goto ret0;

 L4153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 367;  /* *iorqi_3 */
    }
  goto ret0;

 L4169: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L4170;
    }
  goto ret0;

 L4170: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4171;
    }
  goto ret0;

 L4171: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 368;  /* *xorqi_3 */
    }
  goto ret0;

 L5196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5197;
    }
  goto ret0;

 L5197: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5198;
    }
  goto ret0;

 L5198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 444;  /* *ashlqi3_cconly */
    }
  goto ret0;

 L5675: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5676;
    }
  goto ret0;

 L5676: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5677;
    }
  goto ret0;

 L5677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 476;  /* *lshrqi3_cconly */
    }
  goto ret0;

 L5693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5694;
    }
  goto ret0;

 L5694: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5695;
    }
  goto ret0;

 L5695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 477;  /* *ashrqi3_cconly */
    }
  goto ret0;

 L1647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L1648;
    }
  goto ret0;

 L1648: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 210;  /* *addqi_4 */
    }
  goto ret0;

 L57433: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case NEG:
      goto L1597;
    case PLUS:
      goto L1712;
    case AND:
      goto L3358;
    case IOR:
      goto L4187;
    case XOR:
      goto L4205;
    case ASHIFT:
      goto L5214;
    case LSHIFTRT:
      goto L5711;
    case ASHIFTRT:
      goto L5729;
    case REG:
    case SUBREG:
    case MEM:
      goto L57437;
    default:
      goto ret0;
   }
 L57437: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L1662;
    }
  goto ret0;

 L1597: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L1598;
    }
  goto ret0;

 L1598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L1599;
    }
  goto ret0;

 L1599: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 207;  /* *addhi_3 */
    }
  goto ret0;

 L1712: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L1713;
    }
  goto ret0;

 L1713: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L1714;
    }
  goto ret0;

 L1714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 214;  /* *addhi_5 */
    }
  goto ret0;

 L3358: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[0] = x3;
      goto L3359;
    }
  goto ret0;

 L3359: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L3360;
    }
  goto ret0;

 L3360: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7526 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 304;  /* *testhi_1 */
    }
  goto ret0;

 L4187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4188;
    }
  goto ret0;

 L4188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L4189;
    }
  goto ret0;

 L4189: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 369;  /* *iorhi_3 */
    }
  goto ret0;

 L4205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4206;
    }
  goto ret0;

 L4206: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L4207;
    }
  goto ret0;

 L4207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 370;  /* *xorhi_3 */
    }
  goto ret0;

 L5214: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L5215;
    }
  goto ret0;

 L5215: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5216;
    }
  goto ret0;

 L5216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 445;  /* *ashlhi3_cconly */
    }
  goto ret0;

 L5711: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L5712;
    }
  goto ret0;

 L5712: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5713;
    }
  goto ret0;

 L5713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 478;  /* *lshrhi3_cconly */
    }
  goto ret0;

 L5729: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L5730;
    }
  goto ret0;

 L5730: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5731;
    }
  goto ret0;

 L5731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 479;  /* *ashrhi3_cconly */
    }
  goto ret0;

 L1662: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1663;
    }
  goto ret0;

 L1663: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 211;  /* *addhi_4 */
    }
  goto ret0;

 L57434: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case NEG:
      goto L1614;
    case PLUS:
      goto L1730;
    case AND:
      goto L3365;
    case ZERO_EXTRACT:
      goto L3406;
    case IOR:
      goto L4223;
    case XOR:
      goto L4241;
    case ASHIFT:
      goto L5232;
    case LSHIFTRT:
      goto L5747;
    case ASHIFTRT:
      goto L5765;
    case REG:
    case SUBREG:
    case MEM:
      goto L57438;
    default:
      goto ret0;
   }
 L57438: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L1677;
    }
  goto ret0;

 L1614: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L1615;
    }
  goto ret0;

 L1615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L1616;
    }
  goto ret0;

 L1616: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 208;  /* *addsi_3 */
    }
  goto ret0;

 L1730: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1731;
    }
  goto ret0;

 L1731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L1732;
    }
  goto ret0;

 L1732: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 215;  /* *addsi_5 */
    }
  goto ret0;

 L3365: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L57473;
  goto ret0;

 L57473: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ZERO_EXTRACT)
    goto L3373;
  if (nonimmediate_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L3366;
    }
  goto ret0;

 L3373: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[0] = x4;
      goto L3374;
    }
  goto ret0;

 L3374: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3375;
  goto ret0;

 L3375: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3386;
  goto ret0;

 L3386: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode)
    goto L57474;
 L3376: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L3377;
    }
  goto ret0;

 L57474: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L3387;
    case ZERO_EXTRACT:
      goto L3398;
    default:
     break;
   }
  goto L3376;

 L3387: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_x64nomem_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L3388;
    }
  goto L3376;

 L3388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7574 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 307;  /* *testqi_ext_1 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L3376;

 L3398: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L3399;
    }
  goto L3376;

 L3399: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3400;
  goto L3376;

 L3400: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3401;
  goto L3376;

 L3401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7593 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 308;  /* *testqi_ext_2 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L3376;

 L3377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7555 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 306;  /* *testqi_ext_0 */
    }
  goto ret0;

 L3366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L3367;
    }
  goto ret0;

 L3367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7526 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 305;  /* *testsi_1 */
    }
  goto ret0;

 L3406: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L3407;
    }
  goto ret0;

 L3407: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L3408;
    }
  goto ret0;

 L3408: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3409;
    }
  goto ret0;

 L3409: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7606 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ((TARGET_64BIT && GET_MODE (operands[0]) == DImode)
       || GET_MODE (operands[0]) == SImode
       || GET_MODE (operands[0]) == HImode
       || GET_MODE (operands[0]) == QImode)
   /* Ensure that resulting mask is zero or sign extended operand.  */
   && INTVAL (operands[2]) >= 0
   && ((INTVAL (operands[1]) > 0
	&& INTVAL (operands[1]) + INTVAL (operands[2]) <= 32)
       || (SImode == DImode
	   && INTVAL (operands[1]) > 32
	   && INTVAL (operands[1]) + INTVAL (operands[2]) == 64))))
    {
      return 309;  /* *testqi_ext_3 */
    }
  goto ret0;

 L4223: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L4224;
    }
  goto ret0;

 L4224: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L4225;
    }
  goto ret0;

 L4225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 371;  /* *iorsi_3 */
    }
  goto ret0;

 L4241: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L4242;
    }
  goto ret0;

 L4242: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L4243;
    }
  goto ret0;

 L4243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 372;  /* *xorsi_3 */
    }
  goto ret0;

 L5232: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5233;
    }
  goto ret0;

 L5233: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5234;
    }
  goto ret0;

 L5234: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 446;  /* *ashlsi3_cconly */
    }
  goto ret0;

 L5747: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5748;
    }
  goto ret0;

 L5748: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5749;
    }
  goto ret0;

 L5749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 480;  /* *lshrsi3_cconly */
    }
  goto ret0;

 L5765: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5766;
    }
  goto ret0;

 L5766: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5767;
    }
  goto ret0;

 L5767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 481;  /* *ashrsi3_cconly */
    }
  goto ret0;

 L1677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L1678;
    }
  goto ret0;

 L1678: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGCmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 212;  /* *addsi_4 */
    }
  goto ret0;

 L57435: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case NEG:
      goto L1631;
    case PLUS:
      goto L1748;
    case ZERO_EXTRACT:
      goto L3414;
    case IOR:
      goto L4259;
    case XOR:
      goto L4277;
    case ASHIFT:
      goto L5250;
    case LSHIFTRT:
      goto L5783;
    case ASHIFTRT:
      goto L5801;
    default:
     break;
   }
  goto ret0;

 L1631: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L1632;
    }
  goto ret0;

 L1632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L1633;
    }
  goto ret0;

 L1633: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 209;  /* *adddi_3 */
    }
  goto ret0;

 L1748: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L1749;
    }
  goto ret0;

 L1749: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L1750;
    }
  goto ret0;

 L1750: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 216;  /* *adddi_5 */
    }
  goto ret0;

 L3414: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L3415;
    }
  goto ret0;

 L3415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L3416;
    }
  goto ret0;

 L3416: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L3417;
    }
  goto ret0;

 L3417: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 7606 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ((TARGET_64BIT && GET_MODE (operands[0]) == DImode)
       || GET_MODE (operands[0]) == SImode
       || GET_MODE (operands[0]) == HImode
       || GET_MODE (operands[0]) == QImode)
   /* Ensure that resulting mask is zero or sign extended operand.  */
   && INTVAL (operands[2]) >= 0
   && ((INTVAL (operands[1]) > 0
	&& INTVAL (operands[1]) + INTVAL (operands[2]) <= 32)
       || (DImode == DImode
	   && INTVAL (operands[1]) > 32
	   && INTVAL (operands[1]) + INTVAL (operands[2]) == 64))) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 310;  /* *testqi_ext_3 */
    }
  goto ret0;

 L4259: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4260;
    }
  goto ret0;

 L4260: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L4261;
    }
  goto ret0;

 L4261: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 373;  /* *iordi_3 */
    }
  goto ret0;

 L4277: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4278;
    }
  goto ret0;

 L4278: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L4279;
    }
  goto ret0;

 L4279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 374;  /* *xordi_3 */
    }
  goto ret0;

 L5250: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5251;
    }
  goto ret0;

 L5251: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_63_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5252;
    }
  goto ret0;

 L5252: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 447;  /* *ashldi3_cconly */
    }
  goto ret0;

 L5783: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5784;
    }
  goto ret0;

 L5784: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_63_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5785;
    }
  goto ret0;

 L5785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 482;  /* *lshrdi3_cconly */
    }
  goto ret0;

 L5801: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5802;
    }
  goto ret0;

 L5802: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_63_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5803;
    }
  goto ret0;

 L5803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 483;  /* *ashrdi3_cconly */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_7 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case CCFPUmode:
      goto L57484;
    case CCFPmode:
      goto L57485;
    default:
      break;
    }
 L6126: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L6127;
    }
 L6414: ATTRIBUTE_UNUSED_LABEL
  if (ix86_fp_comparison_operator (x2, CCFPmode))
    {
      operands[0] = x2;
      goto L6415;
    }
 L6179: ATTRIBUTE_UNUSED_LABEL
  if (bt_comparison_operator (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L6180;
    }
  goto ret0;

 L57484: ATTRIBUTE_UNUSED_LABEL
  if (ix86_fp_comparison_operator (x2, CCFPUmode))
    {
      operands[0] = x2;
      goto L6733;
    }
  goto L6126;

 L6733: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57486;
    case DFmode:
      goto L57487;
    case XFmode:
      goto L57488;
    default:
      break;
    }
  goto L6126;

 L57486: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L6734;
    }
  goto L6126;

 L6734: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L6735;
    }
  goto L6126;

 L6735: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6736;
    case PC:
      goto L6814;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6736: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6737;

 L6737: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11371 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 533;  /* *jccusf_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6815;
  x2 = XEXP (x1, 0);
  goto L6126;

 L6815: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6816;

 L6816: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 536;  /* *jccusf_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57487: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L6760;
    }
  goto L6126;

 L6760: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L6761;
    }
  goto L6126;

 L6761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6762;
    case PC:
      goto L6841;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6763;

 L6763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11371 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 534;  /* *jccudf_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6842;
  x2 = XEXP (x1, 0);
  goto L6126;

 L6842: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6843;

 L6843: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 537;  /* *jccudf_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57488: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L6786;
    }
  goto L6126;

 L6786: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L6787;
    }
  goto L6126;

 L6787: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6788;
    case PC:
      goto L6868;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6788: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6789;

 L6789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11371 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 535;  /* *jccuxf_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6869;
  x2 = XEXP (x1, 0);
  goto L6126;

 L6869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6870;

 L6870: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 538;  /* *jccuxf_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57485: ATTRIBUTE_UNUSED_LABEL
  if (ix86_swapped_fp_comparison_operator (x2, CCFPmode))
    {
      operands[0] = x2;
      goto L6893;
    }
  goto L6126;

 L6893: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57489;
    case DFmode:
      goto L57490;
    case XFmode:
      goto L57491;
    default:
      break;
    }
  goto L6126;

 L57489: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, SFmode))
    {
      operands[1] = x3;
      goto L6894;
    }
  goto L6126;

 L6894: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L57492;
    case SImode:
      goto L57493;
    default:
      break;
    }
  goto L6126;

 L57492: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L6895;
    }
  goto L6126;

 L6895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L6896;
    }
  goto L6126;

 L6896: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6897;
    case PC:
      goto L7065;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6897: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6898;

 L6898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 539;  /* *jccsf_hi_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7066;
  x2 = XEXP (x1, 0);
  goto L6126;

 L7066: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7067;

 L7067: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 545;  /* *jccsf_hi_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57493: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L6979;
    }
  goto L6126;

 L6979: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L6980;
    }
  goto L6126;

 L6980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6981;
    case PC:
      goto L7152;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6981: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6982;

 L6982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 542;  /* *jccsf_si_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7153;
  x2 = XEXP (x1, 0);
  goto L6126;

 L7153: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7154;

 L7154: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 548;  /* *jccsf_si_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57490: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, DFmode))
    {
      operands[1] = x3;
      goto L6922;
    }
  goto L6126;

 L6922: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L57494;
    case SImode:
      goto L57495;
    default:
      break;
    }
  goto L6126;

 L57494: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L6923;
    }
  goto L6126;

 L6923: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L6924;
    }
  goto L6126;

 L6924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6925;
    case PC:
      goto L7094;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6925: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6926;

 L6926: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 540;  /* *jccdf_hi_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7095;
  x2 = XEXP (x1, 0);
  goto L6126;

 L7095: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7096;

 L7096: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 546;  /* *jccdf_hi_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57495: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L7007;
    }
  goto L6126;

 L7007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L7008;
    }
  goto L6126;

 L7008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L7009;
    case PC:
      goto L7181;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7009: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7010;

 L7010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 543;  /* *jccdf_si_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7182;
  x2 = XEXP (x1, 0);
  goto L6126;

 L7182: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7183;

 L7183: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 549;  /* *jccdf_si_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57491: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, XFmode))
    {
      operands[1] = x3;
      goto L6950;
    }
  goto L6126;

 L6950: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L57496;
    case SImode:
      goto L57497;
    default:
      break;
    }
  goto L6126;

 L57496: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L6951;
    }
  goto L6126;

 L6951: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[3] = x3;
      goto L6952;
    }
  goto L6126;

 L6952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6953;
    case PC:
      goto L7123;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L6953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6954;

 L6954: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 541;  /* *jccxf_hi_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7124;
  x2 = XEXP (x1, 0);
  goto L6126;

 L7124: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7125;

 L7125: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 547;  /* *jccxf_hi_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L57497: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L7035;
    }
  goto L6126;

 L7035: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[3] = x3;
      goto L7036;
    }
  goto L6126;

 L7036: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L7037;
    case PC:
      goto L7210;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7038;

 L7038: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 544;  /* *jccxf_si_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6126;

 L7210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7211;
  x2 = XEXP (x1, 0);
  goto L6126;

 L7211: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L7212;

 L7212: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 550;  /* *jccxf_si_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6126;

 L6127: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L6128;
  goto L6414;

 L6128: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6129;
  goto L6414;

 L6129: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6130;
    case PC:
      goto L6148;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6414;

 L6130: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[0] = x3;
  goto L6131;

 L6131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC)
    goto L57498;
  x2 = XEXP (x1, 0);
  goto L6414;

 L57498: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10995 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX && ix86_bnd_prefixed_insn_p (insn)))
    {
      return 509;  /* *jcc_1_bnd */
    }
 L57499: ATTRIBUTE_UNUSED_LABEL
  return 510;  /* *jcc_1 */

 L6148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6149;
  x2 = XEXP (x1, 0);
  goto L6414;

 L6149: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[0] = x3;
  goto L6150;
 L6159: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x3;
  return 512;  /* *jcc_2 */

 L6150: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11031 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX && ix86_bnd_prefixed_insn_p (insn)))
    {
      return 511;  /* *jcc_2_bnd */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 2);
  x3 = XEXP (x2, 0);
  goto L6159;

 L6415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57500;
    case DFmode:
      goto L57501;
    case XFmode:
      goto L57502;
    default:
      break;
    }
  goto L6179;

 L57500: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L6628;
    }
  goto L6179;

 L6628: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L6629;
    }
  if (const0_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L6417;
    }
  goto L6179;

 L6629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6630;
    case PC:
      goto L6682;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6630: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6631;

 L6631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 529;  /* *jccsf_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6682: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6683;
  x2 = XEXP (x1, 0);
  goto L6179;

 L6683: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6684;

 L6684: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11358 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 531;  /* *jccsf_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6179;

 L6417: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6418;
    case PC:
      goto L6496;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6418: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6419;

 L6419: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 521;  /* *jccsf_0_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6497;
  x2 = XEXP (x1, 0);
  goto L6179;

 L6497: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6498;

 L6498: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11306 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 524;  /* *jccsf_0_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6179;

 L57501: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L6654;
    }
  goto L6179;

 L6654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L6655;
    }
  if (const0_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L6443;
    }
  goto L6179;

 L6655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6656;
    case PC:
      goto L6709;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6656: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6657;

 L6657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 530;  /* *jccdf_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6710;
  x2 = XEXP (x1, 0);
  goto L6179;

 L6710: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6711;

 L6711: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11358 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 532;  /* *jccdf_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6179;

 L6443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6444;
    case PC:
      goto L6523;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6444: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6445;

 L6445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 522;  /* *jccdf_0_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6523: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6524;
  x2 = XEXP (x1, 0);
  goto L6179;

 L6524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6525;

 L6525: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11306 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 525;  /* *jccdf_0_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6179;

 L57502: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L6575;
    }
  goto L6179;

 L6575: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L6576;
    }
  if (const0_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L6469;
    }
  goto L6179;

 L6576: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6577;
    case PC:
      goto L6603;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6577: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6578;

 L6578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11319 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 527;  /* *jccxf_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6604;
  x2 = XEXP (x1, 0);
  goto L6179;

 L6604: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6605;

 L6605: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11332 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 528;  /* *jccxf_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6179;

 L6469: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case LABEL_REF:
      goto L6470;
    case PC:
      goto L6550;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6471;

 L6471: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 523;  /* *jccxf_0_i387 */
    }
  x2 = XEXP (x1, 0);
  goto L6179;

 L6550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6551;
  x2 = XEXP (x1, 0);
  goto L6179;

 L6551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6552;

 L6552: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11306 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 526;  /* *jccxf_0_r_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L6179;

 L6180: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L57503;
    case DImode:
      goto L57504;
    default:
      break;
    }
  goto ret0;

 L57503: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTRACT:
      goto L6181;
    case AND:
      goto L6351;
    default:
     break;
   }
  goto ret0;

 L6181: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L6182;
    }
  goto ret0;

 L6182: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6183;
  goto ret0;

 L6183: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == SImode)
    goto L57506;
  goto ret0;

 L57506: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case ZERO_EXTEND:
      goto L6184;
    case AND:
      goto L6296;
    case REG:
    case SUBREG:
      goto L57507;
    default:
      goto ret0;
   }
 L57507: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L6241;
    }
  goto ret0;

 L6184: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L6185;
    }
  goto ret0;

 L6185: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6186;
  goto ret0;

 L6186: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6187;
  goto ret0;

 L6187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6188;

 L6188: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11125 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 513;  /* *jcc_btsi */
    }
  goto ret0;

 L6296: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L6297;
    }
  goto ret0;

 L6297: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L6298;
    }
  goto ret0;

 L6298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6299;
  goto ret0;

 L6299: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6300;

 L6300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 517;  /* *jcc_btsi_mask */
    }
  goto ret0;

 L6241: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6242;
  goto ret0;

 L6242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6243;
  goto ret0;

 L6243: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6244;

 L6244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11158 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 515;  /* *jcc_btsi_1 */
    }
  goto ret0;

 L6351: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == LSHIFTRT)
    goto L6352;
  goto ret0;

 L6352: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L6353;
    }
  goto ret0;

 L6353: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == QImode)
    goto L57509;
  goto ret0;

 L57509: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L6354;
    }
 L57510: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == SUBREG
      && XINT (x5, 1) == 0)
    goto L6386;
  goto ret0;

 L6354: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6355;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L57510;

 L6355: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6356;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L57510;

 L6356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6357;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L57510;

 L6357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6358;

 L6358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11226 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 519;  /* *jcc_btsi_1 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L57510;

 L6386: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == SImode
      && GET_CODE (x6) == AND)
    goto L6387;
  goto ret0;

 L6387: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (register_operand (x7, SImode))
    {
      operands[2] = x7;
      goto L6388;
    }
  goto ret0;

 L6388: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (const_int_operand (x7, SImode))
    {
      operands[3] = x7;
      goto L6389;
    }
  goto ret0;

 L6389: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6390;
  goto ret0;

 L6390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6391;
  goto ret0;

 L6391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6392;
  goto ret0;

 L6392: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6393;

 L6393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && 
#line 11263 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & 0x1f) == 0x1f)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 520;  /* *jcc_btsi_mask_1 */
    }
  goto ret0;

 L57504: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ZERO_EXTRACT)
    goto L6210;
  goto ret0;

 L6210: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L6211;
    }
  goto ret0;

 L6211: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6212;
  goto ret0;

 L6212: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == SImode)
    goto L57511;
  goto ret0;

 L57511: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case ZERO_EXTEND:
      goto L6213;
    case AND:
      goto L6325;
    case REG:
    case SUBREG:
      goto L57512;
    default:
      goto ret0;
   }
 L57512: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L6268;
    }
  goto ret0;

 L6213: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L6214;
    }
  goto ret0;

 L6214: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6215;
  goto ret0;

 L6215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6216;
  goto ret0;

 L6216: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6217;

 L6217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && (
#line 11125 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 514;  /* *jcc_btdi */
    }
  goto ret0;

 L6325: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L6326;
    }
  goto ret0;

 L6326: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L6327;
    }
  goto ret0;

 L6327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6328;
  goto ret0;

 L6328: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[4] = x3;
  goto L6329;

 L6329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && (
#line 11192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 518;  /* *jcc_btdi_mask */
    }
  goto ret0;

 L6268: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6269;
  goto ret0;

 L6269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L6270;
  goto ret0;

 L6270: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[3] = x3;
  goto L6271;

 L6271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC
      && (
#line 11158 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 516;  /* *jcc_btdi_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_8 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57527;
    case FFS:
      goto L7488;
    case CTZ:
      goto L7520;
    case CLZ:
      goto L7585;
    case AND:
      goto L7652;
    case XOR:
      goto L7698;
    case ZERO_EXTRACT:
      goto L7735;
    case IOR:
      goto L7822;
    case MINUS:
      goto L7966;
    case POPCOUNT:
      goto L7996;
    default:
     break;
   }
  goto ret0;

 L57527: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57531;
    case 2:
      goto L57532;
    default:
      break;
    }
  goto ret0;

 L57531: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 14)
    goto L7439;
  goto ret0;

 L7439: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_CODE (x2))
    {
    case CONST_INT:
      goto L57535;
    case LABEL_REF:
      goto L7452;
    default:
     break;
   }
  goto ret0;

 L57535: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x2, 0) == 0LL
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 585;  /* set_got */
    }
  goto ret0;

 L7452: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[1] = x3;
  goto L7453;

 L7453: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 586;  /* set_got_labelled */
    }
  goto ret0;

 L57532: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 84LL:
      goto L7667;
    case 85LL:
      goto L7766;
    case 86LL:
      goto L7772;
    default:
      break;
    }
  goto ret0;

 L7667: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7668;
    }
  goto ret0;

 L7668: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7669;
    }
  goto ret0;

 L7669: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12633 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 605;  /* bmi_bextr_si */
    }
  goto ret0;

 L7766: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7767;
    }
  goto ret0;

 L7767: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7768;
    }
  goto ret0;

 L7768: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12732 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2))
    {
      return 611;  /* bmi2_pdep_si3 */
    }
  goto ret0;

 L7772: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7773;
    }
  goto ret0;

 L7773: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7774;
    }
  goto ret0;

 L7774: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12743 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2))
    {
      return 612;  /* bmi2_pext_si3 */
    }
  goto ret0;

 L7488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7489;
    }
  goto ret0;

 L7489: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12414 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_CMOVE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 591;  /* ffssi2_no_cmove */
    }
  goto ret0;

 L7520: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7521;
    }
  goto ret0;

 L7521: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_BMI || TARGET_GENERIC)
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 594;  /* *ctzsi2_falsedep_1 */
    }
 L7574: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 598;  /* *ctzsi2 */
    }
  goto ret0;

 L7585: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7586;
    }
  goto ret0;

 L7586: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12576 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 599;  /* *clzsi2_lzcnt_falsedep_1 */
    }
 L7639: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12607 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 603;  /* *clzsi2_lzcnt */
    }
  goto ret0;

 L7652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L57536;
  goto ret0;

 L57536: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case NOT:
      goto L7653;
    case NEG:
      goto L7683;
    case PLUS:
      goto L7716;
    default:
     break;
   }
  goto ret0;

 L7653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7654;
    }
  goto ret0;

 L7654: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7655;
    }
  goto ret0;

 L7655: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12621 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 604;  /* *bmi_andn_si */
    }
  goto ret0;

 L7683: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7684;
    }
  goto ret0;

 L7684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12646 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 606;  /* *bmi_blsi_si */
    }
  goto ret0;

 L7716: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7717;
    }
  goto ret0;

 L7717: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CONST_INT)
    goto L57539;
  goto ret0;

 L57539: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case -1LL:
        goto L7718;
      case 1LL:
        goto L7807;
      default:
        break;
      }
  goto ret0;

 L7718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12674 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 608;  /* *bmi_blsr_si */
    }
 L7952: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L7953;
  goto ret0;

 L7953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 12882 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 622;  /* *tbm_tzmsk_si */
    }
  goto ret0;

 L7807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12773 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 614;  /* *tbm_blcfill_si */
    }
 L7844: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L7845;
  goto ret0;

 L7845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 12801 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 616;  /* *tbm_blcic_si */
    }
  goto ret0;

 L7698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7699;
  goto ret0;

 L7699: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7700;
    }
  goto ret0;

 L7700: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CONST_INT)
    goto L57541;
  goto ret0;

 L57541: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case -1LL:
        goto L7701;
      case 1LL:
        goto L7862;
      default:
        break;
      }
  goto ret0;

 L7701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 607;  /* *bmi_blsmsk_si */
    }
  goto ret0;

 L7862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12814 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 617;  /* *tbm_blcmsk_si */
    }
  goto ret0;

 L7735: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7736;
    }
  goto ret0;

 L7736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMIN)
    goto L7737;
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7789;
    }
  goto ret0;

 L7737: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L57543;
  goto ret0;

 L57543: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case AND:
      goto L7738;
    case ZERO_EXTEND:
      goto L7760;
    default:
     break;
   }
  goto ret0;

 L7738: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L7739;
    }
  goto ret0;

 L7739: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 255LL)
    goto L7740;
  goto ret0;

 L7740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L7741;
    }
  goto ret0;

 L7741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 12705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 609;  /* *bmi2_bzhi_si3 */
    }
  goto ret0;

 L7760: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L7761;
    }
  goto ret0;

 L7761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L7762;
    }
  goto ret0;

 L7762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 12721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 610;  /* *bmi2_bzhi_si3_1 */
    }
  goto ret0;

 L7789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L7790;
    }
  goto ret0;

 L7790: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12757 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 613;  /* tbm_bextri_si */
    }
  goto ret0;

 L7822: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L57545;
  goto ret0;

 L57545: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case NOT:
      goto L7823;
    case PLUS:
      goto L7877;
    default:
     break;
   }
  goto ret0;

 L7823: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L7824;
  goto ret0;

 L7824: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7825;
    }
  goto ret0;

 L7825: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L7826;
  goto ret0;

 L7826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12787 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 615;  /* *tbm_blci_si */
    }
  goto ret0;

 L7877: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7878;
    }
  goto ret0;

 L7878: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CONST_INT)
    goto L57547;
  goto ret0;

 L57547: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L7879;
      case -1LL:
        goto L7896;
      default:
        break;
      }
  goto ret0;

 L7879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12827 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 618;  /* *tbm_blcs_si */
    }
 L7933: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L7934;
  goto ret0;

 L7934: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 12868 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 621;  /* *tbm_t1mskc_si */
    }
  goto ret0;

 L7896: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 12840 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 619;  /* *tbm_blsfill_si */
    }
 L7914: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L7915;
  goto ret0;

 L7915: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 12854 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 620;  /* *tbm_blsic_si */
    }
  goto ret0;

 L7966: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L7967;
  goto ret0;

 L7967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == CLZ)
    goto L7968;
  goto ret0;

 L7968: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7969;
    }
  goto ret0;

 L7969: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 623;  /* bsr */
    }
  goto ret0;

 L7996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L7997;
    }
  goto ret0;

 L7997: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12933 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 625;  /* *popcountsi2_falsedep_1 */
    }
 L8050: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12971 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 629;  /* *popcountsi2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_9 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case BSWAP:
      goto L8059;
    case UNSPEC:
      goto L57571;
    case PLUS:
      goto L8192;
    case IF_THEN_ELSE:
      goto L9886;
    case SIGN_EXTRACT:
      goto L9905;
    case NEG:
      goto L9922;
    case UNSPEC_VOLATILE:
      goto L57577;
    default:
     break;
   }
  goto ret0;

 L8059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8060;
    }
  goto ret0;

 L8060: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13031 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BSWAP))
    {
      return 631;  /* *bswapsi2 */
    }
  goto ret0;

 L57571: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 4:
      goto L57581;
    case 3:
      goto L57582;
    case 1:
      goto L57583;
    case 2:
      goto L57587;
    default:
      break;
    }
  goto ret0;

 L57581: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 20LL:
      goto L8149;
    case 22LL:
      goto L8304;
    default:
      break;
    }
  goto ret0;

 L8149: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8150;
    }
  goto ret0;

 L8150: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (tls_symbolic_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L8151;
    }
  goto ret0;

 L8151: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (constant_call_address_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L8152;
    }
  goto ret0;

 L8152: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7
      && 
#line 13186 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU_TLS)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 637;  /* *tls_global_dynamic_32_gnu */
    }
  goto ret0;

 L8304: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (tls_symbolic_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L8305;
    }
  goto ret0;

 L8305: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L8306;
    }
  goto ret0;

 L8306: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L8307;
    }
  goto ret0;

 L8307: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7
      && 
#line 13522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU2_TLS)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 649;  /* *tls_dynamic_gnu2_call_32 */
    }
  goto ret0;

 L57582: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 21)
    goto L8169;
  goto ret0;

 L8169: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8170;
    }
  goto ret0;

 L8170: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (constant_call_address_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L8171;
    }
  goto ret0;

 L8171: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7
      && 
#line 13281 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU_TLS)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 638;  /* *tls_local_dynamic_base_32_gnu */
    }
  goto ret0;

 L57583: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 19LL:
      goto L8203;
    case 56LL:
      goto L9000;
    case 43LL:
      goto L9400;
    default:
      break;
    }
  goto ret0;

 L8203: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == CONST_INT)
    goto L57588;
  goto ret0;

 L57588: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x2, 0) == 0LL)
    goto L57590;
  goto ret0;

 L57590: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13394 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_X32))
    {
      return 640;  /* *load_tp_x32 */
    }
 L57591: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13416 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 642;  /* *load_tp_si */
    }
  goto ret0;

 L9000: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9001;
    }
  goto ret0;

 L9001: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15359 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()))
    {
      return 730;  /* *fistsi2_1 */
    }
  goto ret0;

 L9400: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L9401;
    }
  goto ret0;

 L9401: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15940 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 766;  /* movmsk_df */
    }
  goto ret0;

 L57587: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 83)
    goto L10318;
  goto ret0;

 L10318: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10319;
    }
  goto ret0;

 L10319: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L57592;
    case HImode:
      goto L57593;
    case SImode:
      goto L57594;
    default:
      break;
    }
  goto ret0;

 L57592: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L10320;
    }
  goto ret0;

 L10320: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18287 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE4_2 || TARGET_CRC32))
    {
      return 835;  /* sse4_2_crc32qi */
    }
  goto ret0;

 L57593: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L10326;
    }
  goto ret0;

 L10326: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18287 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE4_2 || TARGET_CRC32))
    {
      return 836;  /* sse4_2_crc32hi */
    }
  goto ret0;

 L57594: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10332;
    }
  goto ret0;

 L10332: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18287 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE4_2 || TARGET_CRC32))
    {
      return 837;  /* sse4_2_crc32si */
    }
  goto ret0;

 L8192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L57595;
  goto ret0;

 L57595: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L57599;
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8287;
    }
  goto ret0;

 L57599: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L57602;
    case 1:
      goto L57603;
    case 4:
      goto L57604;
    default:
      break;
    }
  goto ret0;

 L57602: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 21)
    goto L8193;
  goto ret0;

 L8193: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8194;
    }
  goto ret0;

 L8194: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (constant_call_address_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L8195;
    }
  goto ret0;

 L8195: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L8196;
  goto ret0;

 L8196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == CONST)
    goto L8197;
  goto ret0;

 L8197: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 6)
    goto L8198;
  goto ret0;

 L8198: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (tls_symbolic_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L8199;
    }
  goto ret0;

 L8199: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 639;  /* *tls_local_dynamic_32_once */
    }
  goto ret0;

 L57603: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 19)
    goto L8230;
  goto ret0;

 L8230: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L8231;
  goto ret0;

 L8231: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8232;
    }
  goto ret0;

 L8232: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13429 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_X32)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 644;  /* *add_tp_x32 */
    }
 L8266: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13456 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 646;  /* *add_tp_si */
    }
  goto ret0;

 L57604: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 22)
    goto L8326;
  goto ret0;

 L8326: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (tls_modbase_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L8327;
    }
  goto ret0;

 L8327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  operands[4] = x3;
  goto L8328;

 L8328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L8329;
    }
  goto ret0;

 L8329: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L8330;
  goto ret0;

 L8330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == CONST)
    goto L8331;
  goto ret0;

 L8331: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 6)
    goto L8332;
  goto ret0;

 L8332: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (tls_symbolic_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L8333;
    }
  goto ret0;

 L8333: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13540 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU2_TLS)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 650;  /* *tls_dynamic_gnu2_combine_32 */
    }
  goto ret0;

 L8287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == CONST)
    goto L8288;
  goto ret0;

 L8288: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 22)
    goto L8289;
  goto ret0;

 L8289: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (tls_symbolic_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L8290;
    }
  goto ret0;

 L8290: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13506 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU2_TLS))
    {
      return 648;  /* *tls_dynamic_gnu2_lea_32 */
    }
  goto ret0;

 L9886: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_carry_flag_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9887;
    }
 L9937: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9938;
    }
  goto ret0;

 L9887: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9888;
  goto L9937;

 L9888: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9889;
  goto L9937;

 L9889: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)])
    goto L9890;
  x2 = XEXP (x1, 0);
  goto L9937;

 L9890: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 794;  /* *x86_movsicc_0_m1 */
    }
  x2 = XEXP (x1, 0);
  goto L9937;

 L9938: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9939;
  goto ret0;

 L9939: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9940;
  goto ret0;

 L9940: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9941;
    }
  goto ret0;

 L9941: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L9942;
    }
  goto ret0;

 L9942: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16736 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 798;  /* *movsicc_noc */
    }
  goto ret0;

 L9905: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_carry_flag_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9906;
    }
  goto ret0;

 L9906: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9907;
  goto ret0;

 L9907: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9908;
  goto ret0;

 L9908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L9909;
  goto ret0;

 L9909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 795;  /* *x86_movsicc_0_m1_se */
    }
  goto ret0;

 L9922: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_carry_flag_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9923;
    }
  goto ret0;

 L9923: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9924;
  goto ret0;

 L9924: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 796;  /* *x86_movsicc_0_m1_neg */
    }
  goto ret0;

 L57577: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57605;
    case 2:
      goto L57606;
    default:
      break;
    }
  goto ret0;

 L57605: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 1LL:
      goto L10095;
    case 12LL:
      goto L10453;
    default:
      break;
    }
  goto ret0;

 L10095: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10096;
    }
  goto ret0;

 L10096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17122 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_target_stack_probe ()) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 817;  /* allocate_stack_worker_probe_si */
    }
  goto ret0;

 L10453: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 18636 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LWP) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 855;  /* lwp_slwpcbsi */
    }
  goto ret0;

 L57606: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 2)
    goto L10150;
  goto ret0;

 L10150: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10151;
    }
  goto ret0;

 L10151: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10152;
    }
  goto ret0;

 L10152: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 821;  /* probe_stack_rangesi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_10 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case SQRT:
      goto L8586;
    case UNSPEC:
      goto L57754;
    case IF_THEN_ELSE:
      goto L9955;
    case PLUS:
    case MINUS:
    case MULT:
    case DIV:
      goto L57740;
    default:
      goto ret0;
   }
 L57740: ATTRIBUTE_UNUSED_LABEL
  if (binary_fp_operator (x1, XFmode))
    {
      operands[3] = x1;
      goto L8492;
    }
  goto ret0;

 L8586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57766;
  goto ret0;

 L57766: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L8592;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8587;
    }
  goto ret0;

 L8592: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57767;
    case DFmode:
      goto L57768;
    default:
      break;
    }
  goto ret0;

 L57767: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8593;
    }
  goto ret0;

 L8593: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 690;  /* sqrt_extendsfxf2_i387 */
    }
  goto ret0;

 L57768: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8599;
    }
  goto ret0;

 L8599: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 691;  /* sqrt_extenddfxf2_i387 */
    }
  goto ret0;

 L8587: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13988 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 689;  /* sqrtxf2 */
    }
  goto ret0;

 L57754: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57769;
    case 2:
      goto L57771;
    default:
      break;
    }
  goto ret0;

 L57769: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 50LL:
      goto L8650;
    case 51LL:
      goto L8655;
    case 57LL:
      goto L8926;
    case 55LL:
      goto L8954;
    case 60LL:
      goto L9038;
    case 61LL:
      goto L9050;
    case 62LL:
      goto L9062;
    case 63LL:
      goto L9104;
    default:
      break;
    }
  goto ret0;

 L8650: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57781;
  goto ret0;

 L57781: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L8661;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8651;
    }
  goto ret0;

 L8661: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57782;
    case DFmode:
      goto L57783;
    default:
      break;
    }
  goto ret0;

 L57782: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8662;
    }
  goto ret0;

 L8662: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14247 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 699;  /* *sin_extendsfxf2_i387 */
    }
  goto ret0;

 L57783: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8674;
    }
  goto ret0;

 L8674: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14247 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 701;  /* *sin_extenddfxf2_i387 */
    }
  goto ret0;

 L8651: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14236 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 697;  /* *sinxf2_i387 */
    }
  goto ret0;

 L8655: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57785;
  goto ret0;

 L57785: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L8667;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8656;
    }
  goto ret0;

 L8667: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57786;
    case DFmode:
      goto L57787;
    default:
      break;
    }
  goto ret0;

 L57786: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8668;
    }
  goto ret0;

 L8668: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14247 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 700;  /* *cos_extendsfxf2_i387 */
    }
  goto ret0;

 L57787: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8680;
    }
  goto ret0;

 L8680: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14247 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 702;  /* *cos_extenddfxf2_i387 */
    }
  goto ret0;

 L8656: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14236 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 698;  /* *cosxf2_i387 */
    }
  goto ret0;

 L8926: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8927;
    }
  goto ret0;

 L8927: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14859 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 721;  /* *f2xm1xf2_i387 */
    }
  goto ret0;

 L8954: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8955;
    }
  goto ret0;

 L8955: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15216 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 725;  /* rintxf2 */
    }
  goto ret0;

 L9038: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9039;
    }
  goto ret0;

 L9039: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 735;  /* frndintxf2_floor */
    }
  goto ret0;

 L9050: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9051;
    }
  goto ret0;

 L9051: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 736;  /* frndintxf2_ceil */
    }
  goto ret0;

 L9062: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9063;
    }
  goto ret0;

 L9063: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 737;  /* frndintxf2_trunc */
    }
  goto ret0;

 L9104: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9105;
    }
  goto ret0;

 L9105: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15591 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 741;  /* frndintxf2_mask_pm */
    }
  goto ret0;

 L57771: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 52LL:
      goto L8753;
    case 53LL:
      goto L8806;
    case 54LL:
      goto L8855;
    default:
      break;
    }
  goto ret0;

 L8753: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57789;
  goto ret0;

 L57789: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L8771;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8754;
    }
  goto ret0;

 L8771: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57790;
    case DFmode:
      goto L57791;
    default:
      break;
    }
  goto ret0;

 L57790: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8772;
    }
  goto ret0;

 L8772: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == FLOAT_EXTEND)
    goto L8773;
  goto ret0;

 L8773: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L8774;
    }
  goto ret0;

 L8774: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14431 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 710;  /* fpatan_extendsfxf3_i387 */
    }
  goto ret0;

 L57791: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8791;
    }
  goto ret0;

 L8791: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == FLOAT_EXTEND)
    goto L8792;
  goto ret0;

 L8792: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L8793;
    }
  goto ret0;

 L8793: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14431 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 711;  /* fpatan_extenddfxf3_i387 */
    }
  goto ret0;

 L8754: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8755;
    }
  goto ret0;

 L8755: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14417 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 709;  /* *fpatanxf3_i387 */
    }
  goto ret0;

 L8806: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57793;
  goto ret0;

 L57793: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L8823;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8807;
    }
  goto ret0;

 L8823: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57794;
    case DFmode:
      goto L57795;
    default:
      break;
    }
  goto ret0;

 L57794: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8824;
    }
  goto ret0;

 L8824: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8825;
    }
  goto ret0;

 L8825: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14602 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 713;  /* fyl2x_extendsfxf3_i387 */
    }
  goto ret0;

 L57795: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8841;
    }
  goto ret0;

 L8841: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8842;
    }
  goto ret0;

 L8842: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14602 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 714;  /* fyl2x_extenddfxf3_i387 */
    }
  goto ret0;

 L8807: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8808;
    }
  goto ret0;

 L8808: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14589 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 712;  /* fyl2xxf3_i387 */
    }
  goto ret0;

 L8855: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57797;
  goto ret0;

 L57797: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L8872;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8856;
    }
  goto ret0;

 L8872: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57798;
    case DFmode:
      goto L57799;
    default:
      break;
    }
  goto ret0;

 L57798: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8873;
    }
  goto ret0;

 L8873: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8874;
    }
  goto ret0;

 L8874: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14719 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 716;  /* fyl2xp1_extendsfxf3_i387 */
    }
  goto ret0;

 L57799: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8890;
    }
  goto ret0;

 L8890: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8891;
    }
  goto ret0;

 L8891: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14719 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 717;  /* fyl2xp1_extenddfxf3_i387 */
    }
  goto ret0;

 L8856: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8857;
    }
  goto ret0;

 L8857: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14706 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 715;  /* fyl2xp1xf3_i387 */
    }
  goto ret0;

 L9955: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (fcmov_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9956;
    }
  goto ret0;

 L9956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9957;
  goto ret0;

 L9957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9958;
  goto ret0;

 L9958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L9959;
    }
  goto ret0;

 L9959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L9960;
    }
  goto ret0;

 L9960: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16835 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE))
    {
      return 800;  /* *movxfcc_1 */
    }
  goto ret0;

 L8492: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57801;
  goto ret0;

 L57801: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FLOAT:
      goto L8505;
    case FLOAT_EXTEND:
      goto L8533;
    case REG:
    case SUBREG:
      goto L57800;
    default:
      goto ret0;
   }
 L57800: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8493;
    }
  goto ret0;

 L8505: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L57803;
    case SImode:
      goto L57804;
    default:
      break;
    }
  goto ret0;

 L57803: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L8506;
    }
  goto ret0;

 L8506: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8507;
    }
  goto ret0;

 L8507: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13887 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_HIMODE_FIOP || optimize_function_for_size_p (cfun))))
    {
      return 677;  /* *fop_xf_2_i387 */
    }
  goto ret0;

 L57804: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8513;
    }
  goto ret0;

 L8513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8514;
    }
  goto ret0;

 L8514: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13887 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_SIMODE_FIOP || optimize_function_for_size_p (cfun))))
    {
      return 678;  /* *fop_xf_2_i387 */
    }
  goto ret0;

 L8533: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57805;
    case DFmode:
      goto L57806;
    default:
      break;
    }
  goto ret0;

 L57805: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8534;
    }
 L57807: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8562;
    }
  goto ret0;

 L8534: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8535;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L57807;

 L8535: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13925 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 681;  /* *fop_xf_4_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L57807;

 L8562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == FLOAT_EXTEND)
    goto L8563;
  goto ret0;

 L8563: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L8564;
    }
  goto ret0;

 L8564: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13960 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 685;  /* *fop_xf_6_i387 */
    }
  goto ret0;

 L57806: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8541;
    }
 L57808: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L8570;
    }
  goto ret0;

 L8541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8542;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L57808;

 L8542: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13925 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 682;  /* *fop_xf_4_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L57808;

 L8570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == FLOAT_EXTEND)
    goto L8571;
  goto ret0;

 L8571: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L8572;
    }
  goto ret0;

 L8572: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13960 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 686;  /* *fop_xf_6_i387 */
    }
  goto ret0;

 L8493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode)
    goto L57810;
  goto ret0;

 L57810: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FLOAT:
      goto L8520;
    case FLOAT_EXTEND:
      goto L8548;
    case REG:
    case SUBREG:
      goto L57809;
    default:
      goto ret0;
   }
 L57809: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8494;
    }
  goto ret0;

 L8520: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L57812;
    case SImode:
      goto L57813;
    default:
      break;
    }
  goto ret0;

 L57812: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L8521;
    }
  goto ret0;

 L8521: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13906 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_HIMODE_FIOP || optimize_function_for_size_p (cfun))))
    {
      return 679;  /* *fop_xf_3_i387 */
    }
  goto ret0;

 L57813: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L8528;
    }
  goto ret0;

 L8528: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13906 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (TARGET_USE_SIMODE_FIOP || optimize_function_for_size_p (cfun))))
    {
      return 680;  /* *fop_xf_3_i387 */
    }
  goto ret0;

 L8548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57814;
    case DFmode:
      goto L57815;
    default:
      break;
    }
  goto ret0;

 L57814: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L8549;
    }
  goto ret0;

 L8549: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13942 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 683;  /* *fop_xf_5_i387 */
    }
  goto ret0;

 L57815: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L8556;
    }
  goto ret0;

 L8556: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13942 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 684;  /* *fop_xf_5_i387 */
    }
  goto ret0;

 L8494: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13855 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && COMMUTATIVE_ARITH_P (operands[3])))
    {
      return 675;  /* *fop_xf_comm_i387 */
    }
 L8500: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13869 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && !COMMUTATIVE_ARITH_P (operands[3])))
    {
      return 676;  /* *fop_xf_1_i387 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_11 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57859;
    case ZERO_EXTEND:
      goto L11350;
    case AND:
      goto L15659;
    case FIX:
      goto L19912;
    case UNSIGNED_FIX:
      goto L20527;
    default:
     break;
   }
  goto ret0;

 L57859: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57870;
    case 3:
      goto L57872;
    case 2:
      goto L57877;
    default:
      break;
    }
  goto ret0;

 L57870: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 12LL:
      goto L10661;
    case 43LL:
      goto L11446;
    case 41LL:
      goto L19889;
    case 150LL:
      goto L20509;
    case 187LL:
      goto L21927;
    default:
      break;
    }
  goto ret0;

 L10661: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (symbol_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10662;
    }
  goto ret0;

 L10662: ATTRIBUTE_UNUSED_LABEL
  if (
#line 19008 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX))
    {
      return 885;  /* move_size_reloc_si */
    }
  goto ret0;

 L11446: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11447;
    }
  goto ret0;

 L11447: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1526 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 992;  /* mmx_pmovmskb */
    }
  goto ret0;

 L19889: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57881;
    case DFmode:
      goto L57883;
    default:
      break;
    }
  goto ret0;

 L57881: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L19890;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L19908;
    }
  goto ret0;

 L19890: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19891;
    }
  goto ret0;

 L19891: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L19892;
  goto ret0;

 L19892: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 3890 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1923;  /* sse_cvtss2si */
    }
  goto ret0;

 L19908: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3903 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1925;  /* sse_cvtss2si_2 */
    }
  goto ret0;

 L57883: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20582;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L20600;
    }
  goto ret0;

 L20582: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L20583;
    }
  goto ret0;

 L20583: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L20584;
  goto ret0;

 L20584: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4381 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2011;  /* sse2_cvtsd2si */
    }
  goto ret0;

 L20600: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4395 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2013;  /* sse2_cvtsd2si_2 */
    }
  goto ret0;

 L20509: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57885;
    case DFmode:
      goto L57886;
    default:
      break;
    }
  goto ret0;

 L57885: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20510;
  goto ret0;

 L20510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20511;
    }
  goto ret0;

 L20511: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L20512;
  goto ret0;

 L20512: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2003;  /* avx512f_vcvtss2usi */
    }
  goto ret0;

 L57886: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20546;
  goto ret0;

 L20546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L20547;
    }
  goto ret0;

 L20547: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L20548;
  goto ret0;

 L20548: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2007;  /* avx512f_vcvtsd2usi */
    }
  goto ret0;

 L21927: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57887;
    case V32HImode:
      goto L57888;
    default:
      break;
    }
  goto ret0;

 L57887: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L21928;
    }
  goto ret0;

 L21928: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4985 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2179;  /* avx512vl_cvtb2maskv32qi */
    }
  goto ret0;

 L57888: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L21933;
    }
  goto ret0;

 L21933: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4985 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2180;  /* avx512bw_cvtw2maskv32hi */
    }
  goto ret0;

 L57872: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15652;
    case 151LL:
      goto L15748;
    default:
      break;
    }
  goto ret0;

 L15652: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57889;
    case V32HImode:
      goto L57890;
    default:
      break;
    }
  goto ret0;

 L57889: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L15653;
    }
  goto ret0;

 L15653: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L15654;
    }
  goto ret0;

 L15654: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15655;
    }
  goto ret0;

 L15655: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1502;  /* avx512vl_cmpv32qi3 */
    }
  goto ret0;

 L57890: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L15669;
    }
  goto ret0;

 L15669: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L15670;
    }
  goto ret0;

 L15670: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15671;
    }
  goto ret0;

 L15671: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1504;  /* avx512bw_cmpv32hi3 */
    }
  goto ret0;

 L15748: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57891;
    case V32HImode:
      goto L57892;
    default:
      break;
    }
  goto ret0;

 L57891: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L15749;
    }
  goto ret0;

 L15749: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L15750;
    }
  goto ret0;

 L15750: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15751;
    }
  goto ret0;

 L15751: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1514;  /* avx512vl_ucmpv32qi3 */
    }
  goto ret0;

 L57892: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L15765;
    }
  goto ret0;

 L15765: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L15766;
    }
  goto ret0;

 L15766: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15767;
    }
  goto ret0;

 L15767: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1516;  /* avx512bw_ucmpv32hi3 */
    }
  goto ret0;

 L57877: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 167LL:
      goto L31648;
    case 168LL:
      goto L31954;
    case 152LL:
      goto L32920;
    case 153LL:
      goto L33088;
    default:
      break;
    }
  goto ret0;

 L31648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57893;
    case V32HImode:
      goto L57894;
    default:
      break;
    }
  goto ret0;

 L57893: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31649;
    }
  goto ret0;

 L31649: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31650;
    }
  goto ret0;

 L31650: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V32QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3107;  /* avx512vl_eqv32qi3_1 */
    }
  goto ret0;

 L57894: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L31663;
    }
  goto ret0;

 L31663: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L31664;
    }
  goto ret0;

 L31664: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V32HImode, operands)))
    {
      return 3109;  /* avx512bw_eqv32hi3_1 */
    }
  goto ret0;

 L31954: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57895;
    case V32HImode:
      goto L57896;
    default:
      break;
    }
  goto ret0;

 L57895: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31955;
    }
  goto ret0;

 L31955: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31956;
    }
  goto ret0;

 L31956: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3152;  /* avx512vl_gtv32qi3 */
    }
  goto ret0;

 L57896: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L31969;
    }
  goto ret0;

 L31969: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L31970;
    }
  goto ret0;

 L31970: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3154;  /* avx512bw_gtv32hi3 */
    }
  goto ret0;

 L32920: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57897;
    case V32HImode:
      goto L57898;
    default:
      break;
    }
  goto ret0;

 L57897: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L32921;
    }
  goto ret0;

 L32921: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L32922;
    }
  goto ret0;

 L32922: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3275;  /* avx512vl_testmv32qi3 */
    }
  goto ret0;

 L57898: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L32935;
    }
  goto ret0;

 L32935: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L32936;
    }
  goto ret0;

 L32936: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3277;  /* avx512bw_testmv32hi3 */
    }
  goto ret0;

 L33088: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L57899;
    case V32HImode:
      goto L57900;
    default:
      break;
    }
  goto ret0;

 L57899: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L33089;
    }
  goto ret0;

 L33089: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L33090;
    }
  goto ret0;

 L33090: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3299;  /* avx512vl_testnmv32qi3 */
    }
  goto ret0;

 L57900: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L33103;
    }
  goto ret0;

 L33103: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L33104;
    }
  goto ret0;

 L33104: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3301;  /* avx512bw_testnmv32hi3 */
    }
  goto ret0;

 L11350: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L57901;
    case QImode:
      goto L57902;
    default:
      break;
    }
  goto ret0;

 L57901: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L11351;
  goto ret0;

 L11351: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4HImode:
      goto L57903;
    case V8HImode:
      goto L57904;
    default:
      break;
    }
  goto ret0;

 L57903: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4HImode))
    {
      operands[1] = x3;
      goto L11352;
    }
  goto ret0;

 L11352: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L11353;
  goto ret0;

 L11353: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L11354;
    }
  goto ret0;

 L11354: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1177 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 981;  /* mmx_pextrw */
    }
  goto ret0;

 L57904: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L35474;
    }
  goto ret0;

 L35474: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L35475;
  goto ret0;

 L35475: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_7_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L35476;
    }
  goto ret0;

 L35476: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12658 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 3440;  /* *vec_extractv8hi_zext */
    }
  goto ret0;

 L57902: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L35465;
  goto ret0;

 L35465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L35466;
    }
  goto ret0;

 L35466: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L35467;
  goto ret0;

 L35467: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L35468;
    }
  goto ret0;

 L35468: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12643 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3439;  /* *vec_extractv16qi_zext */
    }
  goto ret0;

 L15659: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L57905;
  goto ret0;

 L57905: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L57911;
  goto ret0;

 L57911: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L57917;
    case 2:
      goto L57919;
    default:
      break;
    }
  goto ret0;

 L57917: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 135LL:
      goto L15660;
    case 151LL:
      goto L15756;
    default:
      break;
    }
  goto ret0;

 L15660: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V32QImode:
      goto L57923;
    case V32HImode:
      goto L57924;
    default:
      break;
    }
  goto ret0;

 L57923: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L15661;
    }
  goto ret0;

 L15661: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L15662;
    }
  goto ret0;

 L15662: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15663;
    }
  goto ret0;

 L15663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15664;
    }
  goto ret0;

 L15664: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1503;  /* avx512vl_cmpv32qi3_mask */
    }
  goto ret0;

 L57924: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L15677;
    }
  goto ret0;

 L15677: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L15678;
    }
  goto ret0;

 L15678: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15679;
    }
  goto ret0;

 L15679: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15680;
    }
  goto ret0;

 L15680: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1505;  /* avx512bw_cmpv32hi3_mask */
    }
  goto ret0;

 L15756: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V32QImode:
      goto L57925;
    case V32HImode:
      goto L57926;
    default:
      break;
    }
  goto ret0;

 L57925: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L15757;
    }
  goto ret0;

 L15757: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L15758;
    }
  goto ret0;

 L15758: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15759;
    }
  goto ret0;

 L15759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15760;
    }
  goto ret0;

 L15760: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1515;  /* avx512vl_ucmpv32qi3_mask */
    }
  goto ret0;

 L57926: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L15773;
    }
  goto ret0;

 L15773: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L15774;
    }
  goto ret0;

 L15774: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15775;
    }
  goto ret0;

 L15775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15776;
    }
  goto ret0;

 L15776: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1517;  /* avx512bw_ucmpv32hi3_mask */
    }
  goto ret0;

 L57919: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 167LL:
      goto L31655;
    case 168LL:
      goto L31961;
    case 152LL:
      goto L32927;
    case 153LL:
      goto L33095;
    default:
      break;
    }
  goto ret0;

 L31655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V32QImode:
      goto L57927;
    case V32HImode:
      goto L57928;
    default:
      break;
    }
  goto ret0;

 L57927: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L31656;
    }
  goto ret0;

 L31656: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L31657;
    }
  goto ret0;

 L31657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L31658;
    }
  goto ret0;

 L31658: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V32QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3108;  /* avx512vl_eqv32qi3_mask_1 */
    }
  goto ret0;

 L57928: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L31670;
    }
  goto ret0;

 L31670: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L31671;
    }
  goto ret0;

 L31671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L31672;
    }
  goto ret0;

 L31672: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V32HImode, operands))))
    {
      return 3110;  /* avx512bw_eqv32hi3_mask_1 */
    }
  goto ret0;

 L31961: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V32QImode:
      goto L57929;
    case V32HImode:
      goto L57930;
    default:
      break;
    }
  goto ret0;

 L57929: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L31962;
    }
  goto ret0;

 L31962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L31963;
    }
  goto ret0;

 L31963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L31964;
    }
  goto ret0;

 L31964: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3153;  /* avx512vl_gtv32qi3_mask */
    }
  goto ret0;

 L57930: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L31976;
    }
  goto ret0;

 L31976: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L31977;
    }
  goto ret0;

 L31977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L31978;
    }
  goto ret0;

 L31978: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3155;  /* avx512bw_gtv32hi3_mask */
    }
  goto ret0;

 L32927: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V32QImode:
      goto L57931;
    case V32HImode:
      goto L57932;
    default:
      break;
    }
  goto ret0;

 L57931: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L32928;
    }
  goto ret0;

 L32928: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L32929;
    }
  goto ret0;

 L32929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L32930;
    }
  goto ret0;

 L32930: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3276;  /* avx512vl_testmv32qi3_mask */
    }
  goto ret0;

 L57932: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L32942;
    }
  goto ret0;

 L32942: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L32943;
    }
  goto ret0;

 L32943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L32944;
    }
  goto ret0;

 L32944: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3278;  /* avx512bw_testmv32hi3_mask */
    }
  goto ret0;

 L33095: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V32QImode:
      goto L57933;
    case V32HImode:
      goto L57934;
    default:
      break;
    }
  goto ret0;

 L57933: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L33096;
    }
  goto ret0;

 L33096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L33097;
    }
  goto ret0;

 L33097: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L33098;
    }
  goto ret0;

 L33098: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3300;  /* avx512vl_testnmv32qi3_mask */
    }
  goto ret0;

 L57934: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L33110;
    }
  goto ret0;

 L33110: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L33111;
    }
  goto ret0;

 L33111: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L33112;
    }
  goto ret0;

 L33112: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3302;  /* avx512bw_testnmv32hi3_mask */
    }
  goto ret0;

 L19912: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57935;
    case DFmode:
      goto L57936;
    default:
      break;
    }
  goto ret0;

 L57935: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L19913;
  goto ret0;

 L19913: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19914;
    }
  goto ret0;

 L19914: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L19915;
  goto ret0;

 L19915: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 3949 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1926;  /* sse_cvttss2si */
    }
  goto ret0;

 L57936: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20605;
  goto ret0;

 L20605: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L20606;
    }
  goto ret0;

 L20606: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L20607;
  goto ret0;

 L20607: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2014;  /* sse2_cvttsd2si */
    }
  goto ret0;

 L20527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57937;
    case DFmode:
      goto L57938;
    default:
      break;
    }
  goto ret0;

 L57937: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20528;
  goto ret0;

 L20528: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20529;
    }
  goto ret0;

 L20529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L20530;
  goto ret0;

 L20530: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2005;  /* avx512f_vcvttss2usi */
    }
  goto ret0;

 L57938: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20564;
  goto ret0;

 L20564: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L20565;
    }
  goto ret0;

 L20565: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L20566;
  goto ret0;

 L20566: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4356 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2009;  /* avx512f_vcvttsd2usi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_12 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L10885;
    case MINUS:
      goto L10891;
    case SS_PLUS:
      goto L10933;
    case US_PLUS:
      goto L10939;
    case SS_MINUS:
      goto L10945;
    case US_MINUS:
      goto L10951;
    case UMAX:
      goto L11077;
    case UMIN:
      goto L11083;
    case EQ:
      goto L11137;
    case GT:
      goto L11155;
    case AND:
      goto L11173;
    case IOR:
      goto L11200;
    case XOR:
      goto L11206;
    case VEC_CONCAT:
      goto L11248;
    case VEC_SELECT:
      goto L11272;
    case TRUNCATE:
      goto L11404;
    case UNSPEC:
      goto L57980;
    case ABS:
      goto L37969;
    default:
     break;
   }
  goto ret0;

 L10885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L10886;
    }
  goto ret0;

 L10886: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L10887;
    }
  goto ret0;

 L10887: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V8QImode == V1DImode))
   && ix86_binary_operator_ok (PLUS, V8QImode, operands)))
    {
      return 919;  /* *mmx_addv8qi3 */
    }
  goto ret0;

 L10891: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L10892;
    }
  goto ret0;

 L10892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L10893;
    }
  goto ret0;

 L10893: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V8QImode == V1DImode))
   && ix86_binary_operator_ok (MINUS, V8QImode, operands)))
    {
      return 920;  /* *mmx_subv8qi3 */
    }
  goto ret0;

 L10933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L10934;
    }
  goto ret0;

 L10934: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L10935;
    }
  goto ret0;

 L10935: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (SS_PLUS, V8QImode, operands)))
    {
      return 927;  /* *mmx_ssaddv8qi3 */
    }
  goto ret0;

 L10939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L10940;
    }
  goto ret0;

 L10940: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L10941;
    }
  goto ret0;

 L10941: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (US_PLUS, V8QImode, operands)))
    {
      return 928;  /* *mmx_usaddv8qi3 */
    }
  goto ret0;

 L10945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L10946;
    }
  goto ret0;

 L10946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L10947;
    }
  goto ret0;

 L10947: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (SS_MINUS, V8QImode, operands)))
    {
      return 929;  /* *mmx_sssubv8qi3 */
    }
  goto ret0;

 L10951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L10952;
    }
  goto ret0;

 L10952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L10953;
    }
  goto ret0;

 L10953: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (US_MINUS, V8QImode, operands)))
    {
      return 930;  /* *mmx_ussubv8qi3 */
    }
  goto ret0;

 L11077: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11078;
    }
  goto ret0;

 L11078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11079;
    }
  goto ret0;

 L11079: ATTRIBUTE_UNUSED_LABEL
  if (
#line 911 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ix86_binary_operator_ok (UMAX, V8QImode, operands)))
    {
      return 943;  /* *mmx_umaxv8qi3 */
    }
  goto ret0;

 L11083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11084;
    }
  goto ret0;

 L11084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11085;
    }
  goto ret0;

 L11085: ATTRIBUTE_UNUSED_LABEL
  if (
#line 911 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ix86_binary_operator_ok (UMIN, V8QImode, operands)))
    {
      return 944;  /* *mmx_uminv8qi3 */
    }
  goto ret0;

 L11137: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11138;
    }
  goto ret0;

 L11138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11139;
    }
  goto ret0;

 L11139: ATTRIBUTE_UNUSED_LABEL
  if (
#line 964 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (EQ, V8QImode, operands)))
    {
      return 953;  /* *mmx_eqv8qi3 */
    }
  goto ret0;

 L11155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11156;
    }
  goto ret0;

 L11156: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11157;
    }
  goto ret0;

 L11157: ATTRIBUTE_UNUSED_LABEL
  if (
#line 974 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 956;  /* mmx_gtv8qi3 */
    }
  goto ret0;

 L11173: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8QImode)
    goto L57982;
  goto ret0;

 L57982: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L11174;
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11195;
    }
  goto ret0;

 L11174: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8QImode))
    {
      operands[1] = x3;
      goto L11175;
    }
  goto ret0;

 L11175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11176;
    }
  goto ret0;

 L11176: ATTRIBUTE_UNUSED_LABEL
  if (
#line 990 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 959;  /* mmx_andnotv8qi3 */
    }
  goto ret0;

 L11195: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11196;
    }
  goto ret0;

 L11196: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (AND, V8QImode, operands)))
    {
      return 962;  /* *mmx_andv8qi3 */
    }
  goto ret0;

 L11200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11201;
    }
  goto ret0;

 L11201: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11202;
    }
  goto ret0;

 L11202: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (IOR, V8QImode, operands)))
    {
      return 963;  /* *mmx_iorv8qi3 */
    }
  goto ret0;

 L11206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11207;
    }
  goto ret0;

 L11207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11208;
    }
  goto ret0;

 L11208: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (XOR, V8QImode, operands)))
    {
      return 964;  /* *mmx_xorv8qi3 */
    }
  goto ret0;

 L11248: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4QImode)
    goto L57984;
  goto ret0;

 L57984: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L11249;
    case US_TRUNCATE:
      goto L11265;
    default:
     break;
   }
  goto ret0;

 L11249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4HImode))
    {
      operands[1] = x3;
      goto L11250;
    }
  goto ret0;

 L11250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4QImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L11251;
  goto ret0;

 L11251: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4HImode))
    {
      operands[2] = x3;
      goto L11252;
    }
  goto ret0;

 L11252: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1026 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 971;  /* mmx_packsswb */
    }
  goto ret0;

 L11265: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4HImode))
    {
      operands[1] = x3;
      goto L11266;
    }
  goto ret0;

 L11266: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4QImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L11267;
  goto ret0;

 L11267: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4HImode))
    {
      operands[2] = x3;
      goto L11268;
    }
  goto ret0;

 L11268: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1050 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 973;  /* mmx_packuswb */
    }
  goto ret0;

 L11272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L11273;
  goto ret0;

 L11273: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8QImode))
    {
      operands[1] = x3;
      goto L11274;
    }
  goto ret0;

 L11274: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8QImode))
    {
      operands[2] = x3;
      goto L11275;
    }
  goto ret0;

 L11275: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L11276;
  goto ret0;

 L11276: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L57986;
  goto ret0;

 L57986: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 4LL:
        goto L11277;
      case 0LL:
        goto L11292;
      default:
        break;
      }
  goto ret0;

 L11277: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L11278;
  goto ret0;

 L11278: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L11279;
  goto ret0;

 L11279: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L11280;
  goto ret0;

 L11280: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L11281;
  goto ret0;

 L11281: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L11282;
  goto ret0;

 L11282: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L11283;
  goto ret0;

 L11283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 1065 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 974;  /* mmx_punpckhbw */
    }
  goto ret0;

 L11292: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L11293;
  goto ret0;

 L11293: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11294;
  goto ret0;

 L11294: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L11295;
  goto ret0;

 L11295: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L11296;
  goto ret0;

 L11296: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L11297;
  goto ret0;

 L11297: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L11298;
  goto ret0;

 L11298: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)]
      && 
#line 1080 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 975;  /* mmx_punpcklbw */
    }
  goto ret0;

 L11404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L11405;
  goto ret0;

 L11405: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == PLUS)
    goto L11406;
  goto ret0;

 L11406: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8HImode
      && GET_CODE (x4) == PLUS)
    goto L11407;
  goto ret0;

 L11407: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L11408;
  goto ret0;

 L11408: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8QImode))
    {
      operands[1] = x6;
      goto L11409;
    }
  goto ret0;

 L11409: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V8HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L11410;
  goto ret0;

 L11410: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8QImode))
    {
      operands[2] = x6;
      goto L11411;
    }
  goto ret0;

 L11411: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V8HImode
      && GET_CODE (x4) == CONST_VECTOR
      && XVECLEN (x4, 0) == 8)
    goto L11412;
  goto ret0;

 L11412: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11413;
  goto ret0;

 L11413: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11414;
  goto ret0;

 L11414: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11415;
  goto ret0;

 L11415: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11416;
  goto ret0;

 L11416: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11417;
  goto ret0;

 L11417: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11418;
  goto ret0;

 L11418: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11419;
  goto ret0;

 L11419: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11420;
  goto ret0;

 L11420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1458 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW)
   && ix86_binary_operator_ok (PLUS, V8QImode, operands)))
    {
      return 989;  /* *mmx_uavgv8qi3 */
    }
  goto ret0;

 L57980: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L57988;
  goto ret0;

 L57988: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 107LL:
      goto L37695;
    case 108LL:
      goto L37737;
    default:
      break;
    }
  goto ret0;

 L37695: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L37696;
    }
  goto ret0;

 L37696: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L37697;
    }
  goto ret0;

 L37697: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13742 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3523;  /* ssse3_pshufbv8qi3 */
    }
  goto ret0;

 L37737: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L37738;
    }
  goto ret0;

 L37738: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L37739;
    }
  goto ret0;

 L37739: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13772 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3530;  /* ssse3_psignv8qi3 */
    }
  goto ret0;

 L37969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L37970;
    }
  goto ret0;

 L37970: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13912 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3564;  /* absv8qi2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_13 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L36776;
    case SS_PLUS:
      goto L36817;
    case MINUS:
      goto L36858;
    case SS_MINUS:
      goto L36899;
    default:
     break;
   }
  goto ret0;

 L36776: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36777;
  goto ret0;

 L36777: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L36778;
    }
  goto ret0;

 L36778: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36779;
  goto ret0;

 L36779: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36780;
  goto ret0;

 L36780: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36781;
  goto ret0;

 L36781: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36782;
  goto ret0;

 L36782: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36783;
  goto ret0;

 L36783: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36784;
  goto ret0;

 L36784: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == PLUS)
    goto L36785;
  goto ret0;

 L36785: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36786;
  goto ret0;

 L36786: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36787;
  goto ret0;

 L36787: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36788;
  goto ret0;

 L36788: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36789;
  goto ret0;

 L36789: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36790;
  goto ret0;

 L36790: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36791;
  goto ret0;

 L36791: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36792;
  goto ret0;

 L36792: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36793;
  goto ret0;

 L36793: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36794;
  goto ret0;

 L36794: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == PLUS)
    goto L36795;
  goto ret0;

 L36795: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36796;
  goto ret0;

 L36796: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L36797;
    }
  goto ret0;

 L36797: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36798;
  goto ret0;

 L36798: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36799;
  goto ret0;

 L36799: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36800;
  goto ret0;

 L36800: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36801;
  goto ret0;

 L36801: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36802;
  goto ret0;

 L36802: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36803;
  goto ret0;

 L36803: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == PLUS)
    goto L36804;
  goto ret0;

 L36804: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36805;
  goto ret0;

 L36805: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36806;
  goto ret0;

 L36806: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36807;
  goto ret0;

 L36807: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36808;
  goto ret0;

 L36808: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36809;
  goto ret0;

 L36809: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36810;
  goto ret0;

 L36810: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36811;
  goto ret0;

 L36811: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 13343 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3489;  /* ssse3_phaddwv4hi3 */
    }
  goto ret0;

 L36817: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36818;
  goto ret0;

 L36818: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L36819;
    }
  goto ret0;

 L36819: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36820;
  goto ret0;

 L36820: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36821;
  goto ret0;

 L36821: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36822;
  goto ret0;

 L36822: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36823;
  goto ret0;

 L36823: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36824;
  goto ret0;

 L36824: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36825;
  goto ret0;

 L36825: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SS_PLUS)
    goto L36826;
  goto ret0;

 L36826: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36827;
  goto ret0;

 L36827: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36828;
  goto ret0;

 L36828: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36829;
  goto ret0;

 L36829: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36830;
  goto ret0;

 L36830: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36831;
  goto ret0;

 L36831: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36832;
  goto ret0;

 L36832: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36833;
  goto ret0;

 L36833: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36834;
  goto ret0;

 L36834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36835;
  goto ret0;

 L36835: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SS_PLUS)
    goto L36836;
  goto ret0;

 L36836: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36837;
  goto ret0;

 L36837: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L36838;
    }
  goto ret0;

 L36838: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36839;
  goto ret0;

 L36839: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36840;
  goto ret0;

 L36840: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36841;
  goto ret0;

 L36841: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36842;
  goto ret0;

 L36842: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36843;
  goto ret0;

 L36843: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36844;
  goto ret0;

 L36844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SS_PLUS)
    goto L36845;
  goto ret0;

 L36845: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36846;
  goto ret0;

 L36846: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36847;
  goto ret0;

 L36847: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36848;
  goto ret0;

 L36848: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36849;
  goto ret0;

 L36849: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36850;
  goto ret0;

 L36850: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36851;
  goto ret0;

 L36851: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36852;
  goto ret0;

 L36852: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 13343 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3490;  /* ssse3_phaddswv4hi3 */
    }
  goto ret0;

 L36858: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36859;
  goto ret0;

 L36859: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L36860;
    }
  goto ret0;

 L36860: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36861;
  goto ret0;

 L36861: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36862;
  goto ret0;

 L36862: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36863;
  goto ret0;

 L36863: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36864;
  goto ret0;

 L36864: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36865;
  goto ret0;

 L36865: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36866;
  goto ret0;

 L36866: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == MINUS)
    goto L36867;
  goto ret0;

 L36867: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36868;
  goto ret0;

 L36868: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36869;
  goto ret0;

 L36869: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36870;
  goto ret0;

 L36870: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36871;
  goto ret0;

 L36871: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36872;
  goto ret0;

 L36872: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36873;
  goto ret0;

 L36873: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36874;
  goto ret0;

 L36874: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36875;
  goto ret0;

 L36875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36876;
  goto ret0;

 L36876: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == MINUS)
    goto L36877;
  goto ret0;

 L36877: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36878;
  goto ret0;

 L36878: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L36879;
    }
  goto ret0;

 L36879: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36880;
  goto ret0;

 L36880: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36881;
  goto ret0;

 L36881: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36882;
  goto ret0;

 L36882: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36883;
  goto ret0;

 L36883: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36884;
  goto ret0;

 L36884: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36885;
  goto ret0;

 L36885: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == MINUS)
    goto L36886;
  goto ret0;

 L36886: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36887;
  goto ret0;

 L36887: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36888;
  goto ret0;

 L36888: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36889;
  goto ret0;

 L36889: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36890;
  goto ret0;

 L36890: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36891;
  goto ret0;

 L36891: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36892;
  goto ret0;

 L36892: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36893;
  goto ret0;

 L36893: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 13343 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3491;  /* ssse3_phsubwv4hi3 */
    }
  goto ret0;

 L36899: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36900;
  goto ret0;

 L36900: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L36901;
    }
  goto ret0;

 L36901: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36902;
  goto ret0;

 L36902: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36903;
  goto ret0;

 L36903: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36904;
  goto ret0;

 L36904: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36905;
  goto ret0;

 L36905: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36906;
  goto ret0;

 L36906: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36907;
  goto ret0;

 L36907: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SS_MINUS)
    goto L36908;
  goto ret0;

 L36908: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36909;
  goto ret0;

 L36909: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36910;
  goto ret0;

 L36910: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36911;
  goto ret0;

 L36911: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36912;
  goto ret0;

 L36912: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36913;
  goto ret0;

 L36913: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L36914;
  goto ret0;

 L36914: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36915;
  goto ret0;

 L36915: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36916;
  goto ret0;

 L36916: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36917;
  goto ret0;

 L36917: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SS_MINUS)
    goto L36918;
  goto ret0;

 L36918: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36919;
  goto ret0;

 L36919: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L36920;
    }
  goto ret0;

 L36920: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36921;
  goto ret0;

 L36921: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36922;
  goto ret0;

 L36922: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36923;
  goto ret0;

 L36923: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36924;
  goto ret0;

 L36924: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36925;
  goto ret0;

 L36925: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36926;
  goto ret0;

 L36926: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SS_MINUS)
    goto L36927;
  goto ret0;

 L36927: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36928;
  goto ret0;

 L36928: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36929;
  goto ret0;

 L36929: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36930;
  goto ret0;

 L36930: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36931;
  goto ret0;

 L36931: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L36932;
  goto ret0;

 L36932: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L36933;
  goto ret0;

 L36933: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L36934;
  goto ret0;

 L36934: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 13343 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3492;  /* ssse3_phsubswv4hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_14 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L10897;
    case MINUS:
      goto L10903;
    case SS_PLUS:
      goto L10957;
    case US_PLUS:
      goto L10963;
    case SS_MINUS:
      goto L10969;
    case US_MINUS:
      goto L10975;
    case MULT:
      goto L10981;
    case TRUNCATE:
      goto L10987;
    case SMAX:
      goto L11065;
    case SMIN:
      goto L11071;
    case ASHIFTRT:
      goto L11089;
    case ASHIFT:
      goto L11101;
    case LSHIFTRT:
      goto L11107;
    case EQ:
      goto L11143;
    case GT:
      goto L11161;
    case AND:
      goto L11180;
    case IOR:
      goto L11218;
    case XOR:
      goto L11224;
    case VEC_CONCAT:
      goto L11256;
    case VEC_SELECT:
      goto L11302;
    case VEC_MERGE:
      goto L11342;
    case VEC_DUPLICATE:
      goto L11375;
    case UNSPEC:
      goto L58014;
    case ABS:
      goto L37974;
    default:
     break;
   }
  goto ret0;

 L10897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10898;
    }
  goto ret0;

 L10898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10899;
    }
  goto ret0;

 L10899: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V4HImode == V1DImode))
   && ix86_binary_operator_ok (PLUS, V4HImode, operands)))
    {
      return 921;  /* *mmx_addv4hi3 */
    }
  goto ret0;

 L10903: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10904;
    }
  goto ret0;

 L10904: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10905;
    }
  goto ret0;

 L10905: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V4HImode == V1DImode))
   && ix86_binary_operator_ok (MINUS, V4HImode, operands)))
    {
      return 922;  /* *mmx_subv4hi3 */
    }
  goto ret0;

 L10957: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4HImode)
    goto L58016;
  goto ret0;

 L58016: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MULT)
    goto L37504;
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10958;
    }
  goto ret0;

 L37504: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L37505;
  goto ret0;

 L37505: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37506;
  goto ret0;

 L37506: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V8QImode))
    {
      operands[1] = x5;
      goto L37507;
    }
  goto ret0;

 L37507: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L37508;
  goto ret0;

 L37508: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37509;
  goto ret0;

 L37509: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37510;
  goto ret0;

 L37510: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37511;
  goto ret0;

 L37511: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37512;
  goto ret0;

 L37512: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L37513;
  goto ret0;

 L37513: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37514;
  goto ret0;

 L37514: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8QImode))
    {
      operands[2] = x5;
      goto L37515;
    }
  goto ret0;

 L37515: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L37516;
  goto ret0;

 L37516: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37517;
  goto ret0;

 L37517: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37518;
  goto ret0;

 L37518: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37519;
  goto ret0;

 L37519: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37520;
  goto ret0;

 L37520: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == MULT)
    goto L37521;
  goto ret0;

 L37521: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L37522;
  goto ret0;

 L37522: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37523;
  goto ret0;

 L37523: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37524;
  goto ret0;

 L37524: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L37525;
  goto ret0;

 L37525: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37526;
  goto ret0;

 L37526: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37527;
  goto ret0;

 L37527: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37528;
  goto ret0;

 L37528: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L37529;
  goto ret0;

 L37529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L37530;
  goto ret0;

 L37530: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37531;
  goto ret0;

 L37531: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37532;
  goto ret0;

 L37532: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L37533;
  goto ret0;

 L37533: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37534;
  goto ret0;

 L37534: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37535;
  goto ret0;

 L37535: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37536;
  goto ret0;

 L37536: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13618 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3509;  /* ssse3_pmaddubsw */
    }
  goto ret0;

 L10958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10959;
    }
  goto ret0;

 L10959: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (SS_PLUS, V4HImode, operands)))
    {
      return 931;  /* *mmx_ssaddv4hi3 */
    }
  goto ret0;

 L10963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10964;
    }
  goto ret0;

 L10964: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10965;
    }
  goto ret0;

 L10965: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (US_PLUS, V4HImode, operands)))
    {
      return 932;  /* *mmx_usaddv4hi3 */
    }
  goto ret0;

 L10969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10970;
    }
  goto ret0;

 L10970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10971;
    }
  goto ret0;

 L10971: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (SS_MINUS, V4HImode, operands)))
    {
      return 933;  /* *mmx_sssubv4hi3 */
    }
  goto ret0;

 L10975: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10976;
    }
  goto ret0;

 L10976: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10977;
    }
  goto ret0;

 L10977: ATTRIBUTE_UNUSED_LABEL
  if (
#line 690 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (US_MINUS, V4HImode, operands)))
    {
      return 934;  /* *mmx_ussubv4hi3 */
    }
  goto ret0;

 L10981: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L10982;
    }
  goto ret0;

 L10982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L10983;
    }
  goto ret0;

 L10983: ATTRIBUTE_UNUSED_LABEL
  if (
#line 706 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (MULT, V4HImode, operands)))
    {
      return 935;  /* *mmx_mulv4hi3 */
    }
  goto ret0;

 L10987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L10988;
  goto ret0;

 L10988: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L58017;
  goto ret0;

 L58017: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case MULT:
      goto L10989;
    case PLUS:
      goto L11038;
    default:
     break;
   }
  goto ret0;

 L10989: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode)
    goto L58019;
  goto ret0;

 L58019: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L10990;
    case ZERO_EXTEND:
      goto L11000;
    default:
     break;
   }
  goto ret0;

 L10990: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L10991;
    }
  goto ret0;

 L10991: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L10992;
  goto ret0;

 L10992: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L10993;
    }
  goto ret0;

 L10993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && 
#line 734 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (MULT, V4HImode, operands)))
    {
      return 936;  /* *mmx_smulv4hi3_highpart */
    }
  goto ret0;

 L11000: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L11001;
    }
  goto ret0;

 L11001: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L11002;
  goto ret0;

 L11002: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L11003;
    }
  goto ret0;

 L11003: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && 
#line 762 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ix86_binary_operator_ok (MULT, V4HImode, operands)))
    {
      return 937;  /* *mmx_umulv4hi3_highpart */
    }
  goto ret0;

 L11038: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode)
    goto L58021;
  goto ret0;

 L58021: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case MULT:
      goto L11039;
    case PLUS:
      goto L11427;
    case LSHIFTRT:
      goto L37639;
    default:
     break;
   }
  goto ret0;

 L11039: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4SImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L11040;
  goto ret0;

 L11040: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V4HImode))
    {
      operands[1] = x6;
      goto L11041;
    }
  goto ret0;

 L11041: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V4SImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L11042;
  goto ret0;

 L11042: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V4HImode))
    {
      operands[2] = x6;
      goto L11043;
    }
  goto ret0;

 L11043: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == CONST_VECTOR
      && XVECLEN (x4, 0) == 4)
    goto L11044;
  goto ret0;

 L11044: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (GET_CODE (x5) == CONST_INT
      && XWINT (x5, 0) == 32768LL)
    goto L11045;
  goto ret0;

 L11045: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (GET_CODE (x5) == CONST_INT
      && XWINT (x5, 0) == 32768LL)
    goto L11046;
  goto ret0;

 L11046: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (GET_CODE (x5) == CONST_INT
      && XWINT (x5, 0) == 32768LL)
    goto L11047;
  goto ret0;

 L11047: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (GET_CODE (x5) == CONST_INT
      && XWINT (x5, 0) == 32768LL)
    goto L11048;
  goto ret0;

 L11048: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && 
#line 843 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && ix86_binary_operator_ok (MULT, V4HImode, operands)))
    {
      return 939;  /* *mmx_pmulhrwv4hi3 */
    }
  goto ret0;

 L11427: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L11428;
  goto ret0;

 L11428: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V4HImode))
    {
      operands[1] = x6;
      goto L11429;
    }
  goto ret0;

 L11429: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V4SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L11430;
  goto ret0;

 L11430: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V4HImode))
    {
      operands[2] = x6;
      goto L11431;
    }
  goto ret0;

 L11431: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == CONST_VECTOR
      && XVECLEN (x4, 0) == 4)
    goto L11432;
  goto ret0;

 L11432: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11433;
  goto ret0;

 L11433: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11434;
  goto ret0;

 L11434: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11435;
  goto ret0;

 L11435: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11436;
  goto ret0;

 L11436: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1506 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ix86_binary_operator_ok (PLUS, V4HImode, operands)))
    {
      return 990;  /* *mmx_uavgv4hi3 */
    }
  goto ret0;

 L37639: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4SImode
      && GET_CODE (x5) == MULT)
    goto L37640;
  goto ret0;

 L37640: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V4SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37641;
  goto ret0;

 L37641: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V4HImode))
    {
      operands[1] = x7;
      goto L37642;
    }
  goto ret0;

 L37642: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V4SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37643;
  goto ret0;

 L37643: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V4HImode))
    {
      operands[2] = x7;
      goto L37644;
    }
  goto ret0;

 L37644: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37645;
  goto ret0;

 L37645: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V4HImode))
    {
      operands[3] = x4;
      goto L37646;
    }
  goto ret0;

 L37646: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && ix86_binary_operator_ok (MULT, V4HImode, operands)))
    {
      return 3516;  /* *ssse3_pmulhrswv4hi3 */
    }
  goto ret0;

 L11065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11066;
    }
  goto ret0;

 L11066: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11067;
    }
  goto ret0;

 L11067: ATTRIBUTE_UNUSED_LABEL
  if (
#line 892 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ix86_binary_operator_ok (SMAX, V4HImode, operands)))
    {
      return 941;  /* *mmx_smaxv4hi3 */
    }
  goto ret0;

 L11071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11072;
    }
  goto ret0;

 L11072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11073;
    }
  goto ret0;

 L11073: ATTRIBUTE_UNUSED_LABEL
  if (
#line 892 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ix86_binary_operator_ok (SMIN, V4HImode, operands)))
    {
      return 942;  /* *mmx_sminv4hi3 */
    }
  goto ret0;

 L11089: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11090;
    }
  goto ret0;

 L11090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11091;
    }
  goto ret0;

 L11091: ATTRIBUTE_UNUSED_LABEL
  if (
#line 922 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 945;  /* mmx_ashrv4hi3 */
    }
  goto ret0;

 L11101: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11102;
    }
  goto ret0;

 L11102: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11103;
    }
  goto ret0;

 L11103: ATTRIBUTE_UNUSED_LABEL
  if (
#line 936 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 947;  /* mmx_ashlv4hi3 */
    }
  goto ret0;

 L11107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11108;
    }
  goto ret0;

 L11108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11109;
    }
  goto ret0;

 L11109: ATTRIBUTE_UNUSED_LABEL
  if (
#line 936 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 948;  /* mmx_lshrv4hi3 */
    }
  goto ret0;

 L11143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11144;
    }
  goto ret0;

 L11144: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11145;
    }
  goto ret0;

 L11145: ATTRIBUTE_UNUSED_LABEL
  if (
#line 964 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (EQ, V4HImode, operands)))
    {
      return 954;  /* *mmx_eqv4hi3 */
    }
  goto ret0;

 L11161: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11162;
    }
  goto ret0;

 L11162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11163;
    }
  goto ret0;

 L11163: ATTRIBUTE_UNUSED_LABEL
  if (
#line 974 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 957;  /* mmx_gtv4hi3 */
    }
  goto ret0;

 L11180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4HImode)
    goto L58024;
  goto ret0;

 L58024: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L11181;
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11213;
    }
  goto ret0;

 L11181: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4HImode))
    {
      operands[1] = x3;
      goto L11182;
    }
  goto ret0;

 L11182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11183;
    }
  goto ret0;

 L11183: ATTRIBUTE_UNUSED_LABEL
  if (
#line 990 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 960;  /* mmx_andnotv4hi3 */
    }
  goto ret0;

 L11213: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11214;
    }
  goto ret0;

 L11214: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (AND, V4HImode, operands)))
    {
      return 965;  /* *mmx_andv4hi3 */
    }
  goto ret0;

 L11218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11219;
    }
  goto ret0;

 L11219: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11220;
    }
  goto ret0;

 L11220: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (IOR, V4HImode, operands)))
    {
      return 966;  /* *mmx_iorv4hi3 */
    }
  goto ret0;

 L11224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11225;
    }
  goto ret0;

 L11225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L11226;
    }
  goto ret0;

 L11226: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (XOR, V4HImode, operands)))
    {
      return 967;  /* *mmx_xorv4hi3 */
    }
  goto ret0;

 L11256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2HImode)
    goto L58026;
  goto ret0;

 L58026: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L11257;
    case VEC_CONCAT:
      goto L36775;
    default:
     break;
   }
  goto ret0;

 L11257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2SImode))
    {
      operands[1] = x3;
      goto L11258;
    }
  goto ret0;

 L11258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2HImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L11259;
  goto ret0;

 L11259: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2SImode))
    {
      operands[2] = x3;
      goto L11260;
    }
  goto ret0;

 L11260: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1038 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 972;  /* mmx_packssdw */
    }
  goto ret0;

 L36775: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode)
    goto L58028;
  goto ret0;

 L58028: ATTRIBUTE_UNUSED_LABEL
  return recog_13 (x0, insn, pnum_clobbers);

 L11302: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8HImode:
      goto L58032;
    case V4HImode:
      goto L58033;
    default:
      break;
    }
  goto ret0;

 L58032: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L11303;
  goto ret0;

 L11303: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4HImode))
    {
      operands[1] = x3;
      goto L11304;
    }
  goto ret0;

 L11304: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4HImode))
    {
      operands[2] = x3;
      goto L11305;
    }
  goto ret0;

 L11305: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L11306;
  goto ret0;

 L11306: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58034;
  goto ret0;

 L58034: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L11307;
      case 0LL:
        goto L11318;
      default:
        break;
      }
  goto ret0;

 L11307: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L11308;
  goto ret0;

 L11308: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L11309;
  goto ret0;

 L11309: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 1093 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 976;  /* mmx_punpckhwd */
    }
  goto ret0;

 L11318: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L11319;
  goto ret0;

 L11319: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11320;
  goto ret0;

 L11320: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)]
      && 
#line 1106 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 977;  /* mmx_punpcklwd */
    }
  goto ret0;

 L58033: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11359;
    }
  goto ret0;

 L11359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L11360;
  goto ret0;

 L11360: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L11361;
    }
  goto ret0;

 L11361: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L11362;
    }
  goto ret0;

 L11362: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L11363;
    }
  goto ret0;

 L11363: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L11364;
    }
  goto ret0;

 L11364: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1206 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 982;  /* mmx_pshufw_1 */
    }
  goto ret0;

 L11342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L11343;
  goto ret0;

 L11343: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L11344;
    }
  goto ret0;

 L11344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L11345;
    }
  goto ret0;

 L11345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L11346;
    }
  goto ret0;

 L11346: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1157 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_SSE || TARGET_3DNOW_A)
   && ((unsigned) exact_log2 (INTVAL (operands[3]))
       < GET_MODE_NUNITS (V4HImode))))
    {
      return 980;  /* *mmx_pinsrw */
    }
  goto ret0;

 L11375: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == TRUNCATE)
    goto L11376;
  goto ret0;

 L11376: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L11377;
    }
  goto ret0;

 L11377: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1237 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 984;  /* *vec_dupv4hi */
    }
  goto ret0;

 L58014: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 108)
    goto L37743;
  goto ret0;

 L37743: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L37744;
    }
  goto ret0;

 L37744: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L37745;
    }
  goto ret0;

 L37745: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13772 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3531;  /* ssse3_psignv4hi3 */
    }
  goto ret0;

 L37974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L37975;
    }
  goto ret0;

 L37975: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13912 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3565;  /* absv4hi2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_15 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case EQ:
      goto L10813;
    case GT:
      goto L10819;
    case GE:
      goto L10825;
    case FIX:
      goto L10831;
    case SIGN_EXTEND:
      goto L10836;
    case PLUS:
      goto L10909;
    case MINUS:
      goto L10915;
    case ASHIFTRT:
      goto L11095;
    case ASHIFT:
      goto L11113;
    case LSHIFTRT:
      goto L11119;
    case AND:
      goto L11187;
    case IOR:
      goto L11236;
    case XOR:
      goto L11242;
    case VEC_SELECT:
      goto L11324;
    case VEC_DUPLICATE:
      goto L11381;
    case VEC_CONCAT:
      goto L11386;
    case UNSPEC:
      goto L58055;
    case ABS:
      goto L37979;
    default:
     break;
   }
  goto ret0;

 L10813: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L58057;
    case V2SImode:
      goto L58058;
    default:
      break;
    }
  goto ret0;

 L58057: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10814;
    }
  goto ret0;

 L10814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10815;
    }
  goto ret0;

 L10815: ATTRIBUTE_UNUSED_LABEL
  if (
#line 460 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && ix86_binary_operator_ok (EQ, V2SFmode, operands)))
    {
      return 907;  /* *mmx_eqv2sf3 */
    }
  goto ret0;

 L58058: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11150;
    }
  goto ret0;

 L11150: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L11151;
    }
  goto ret0;

 L11151: ATTRIBUTE_UNUSED_LABEL
  if (
#line 964 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (EQ, V2SImode, operands)))
    {
      return 955;  /* *mmx_eqv2si3 */
    }
  goto ret0;

 L10819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L58059;
    case V2SImode:
      goto L58060;
    default:
      break;
    }
  goto ret0;

 L58059: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10820;
    }
  goto ret0;

 L10820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10821;
    }
  goto ret0;

 L10821: ATTRIBUTE_UNUSED_LABEL
  if (
#line 470 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 908;  /* mmx_gtv2sf3 */
    }
  goto ret0;

 L58060: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11168;
    }
  goto ret0;

 L11168: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L11169;
    }
  goto ret0;

 L11169: ATTRIBUTE_UNUSED_LABEL
  if (
#line 974 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 958;  /* mmx_gtv2si3 */
    }
  goto ret0;

 L10825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10826;
    }
  goto ret0;

 L10826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10827;
    }
  goto ret0;

 L10827: ATTRIBUTE_UNUSED_LABEL
  if (
#line 480 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 909;  /* mmx_gev2sf3 */
    }
  goto ret0;

 L10831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L58061;
    case V2DFmode:
      goto L58062;
    default:
      break;
    }
  goto ret0;

 L58061: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10832;
    }
  goto ret0;

 L10832: ATTRIBUTE_UNUSED_LABEL
  if (
#line 495 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 910;  /* mmx_pf2id */
    }
  goto ret0;

 L58062: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L20497;
    }
  goto ret0;

 L20497: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2001;  /* sse2_cvttpd2pi */
    }
  goto ret0;

 L10836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2HImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L10837;
  goto ret0;

 L10837: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == FIX)
    goto L10838;
  goto ret0;

 L10838: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SFmode))
    {
      operands[1] = x4;
      goto L10839;
    }
  goto ret0;

 L10839: ATTRIBUTE_UNUSED_LABEL
  if (
#line 507 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW_A))
    {
      return 911;  /* mmx_pf2iw */
    }
  goto ret0;

 L10909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SImode)
    goto L58064;
  goto ret0;

 L58064: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MULT)
    goto L11008;
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L10910;
    }
  goto ret0;

 L11008: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L11009;
  goto ret0;

 L11009: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L11010;
  goto ret0;

 L11010: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[1] = x5;
      goto L11011;
    }
  goto ret0;

 L11011: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L11012;
  goto ret0;

 L11012: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L11013;
  goto ret0;

 L11013: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L11014;
  goto ret0;

 L11014: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L11015;
  goto ret0;

 L11015: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L11016;
  goto ret0;

 L11016: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4HImode))
    {
      operands[2] = x5;
      goto L11017;
    }
  goto ret0;

 L11017: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L11018;
  goto ret0;

 L11018: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L11019;
  goto ret0;

 L11019: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L11020;
  goto ret0;

 L11020: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == MULT)
    goto L11021;
  goto ret0;

 L11021: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L11022;
  goto ret0;

 L11022: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L11023;
  goto ret0;

 L11023: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L11024;
  goto ret0;

 L11024: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L11025;
  goto ret0;

 L11025: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11026;
  goto ret0;

 L11026: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L11027;
  goto ret0;

 L11027: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L11028;
  goto ret0;

 L11028: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L11029;
  goto ret0;

 L11029: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L11030;
  goto ret0;

 L11030: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L11031;
  goto ret0;

 L11031: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11032;
  goto ret0;

 L11032: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 809 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (MULT, V4HImode, operands)))
    {
      return 938;  /* *mmx_pmaddwd */
    }
  goto ret0;

 L10910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L10911;
    }
  goto ret0;

 L10911: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V2SImode == V1DImode))
   && ix86_binary_operator_ok (PLUS, V2SImode, operands)))
    {
      return 923;  /* *mmx_addv2si3 */
    }
  goto ret0;

 L10915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L10916;
    }
  goto ret0;

 L10916: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L10917;
    }
  goto ret0;

 L10917: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V2SImode == V1DImode))
   && ix86_binary_operator_ok (MINUS, V2SImode, operands)))
    {
      return 924;  /* *mmx_subv2si3 */
    }
  goto ret0;

 L11095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11096;
    }
  goto ret0;

 L11096: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11097;
    }
  goto ret0;

 L11097: ATTRIBUTE_UNUSED_LABEL
  if (
#line 922 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 946;  /* mmx_ashrv2si3 */
    }
  goto ret0;

 L11113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11114;
    }
  goto ret0;

 L11114: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11115;
    }
  goto ret0;

 L11115: ATTRIBUTE_UNUSED_LABEL
  if (
#line 936 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 949;  /* mmx_ashlv2si3 */
    }
  goto ret0;

 L11119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11120;
    }
  goto ret0;

 L11120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11121;
    }
  goto ret0;

 L11121: ATTRIBUTE_UNUSED_LABEL
  if (
#line 936 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 950;  /* mmx_lshrv2si3 */
    }
  goto ret0;

 L11187: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SImode)
    goto L58065;
  goto ret0;

 L58065: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L11188;
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11231;
    }
  goto ret0;

 L11188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2SImode))
    {
      operands[1] = x3;
      goto L11189;
    }
  goto ret0;

 L11189: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L11190;
    }
  goto ret0;

 L11190: ATTRIBUTE_UNUSED_LABEL
  if (
#line 990 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 961;  /* mmx_andnotv2si3 */
    }
  goto ret0;

 L11231: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L11232;
    }
  goto ret0;

 L11232: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (AND, V2SImode, operands)))
    {
      return 968;  /* *mmx_andv2si3 */
    }
  goto ret0;

 L11236: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11237;
    }
  goto ret0;

 L11237: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L11238;
    }
  goto ret0;

 L11238: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (IOR, V2SImode, operands)))
    {
      return 969;  /* *mmx_iorv2si3 */
    }
  goto ret0;

 L11242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11243;
    }
  goto ret0;

 L11243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L11244;
    }
  goto ret0;

 L11244: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1008 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && ix86_binary_operator_ok (XOR, V2SImode, operands)))
    {
      return 970;  /* *mmx_xorv2si3 */
    }
  goto ret0;

 L11324: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4SImode:
      goto L58067;
    case V2SImode:
      goto L58068;
    default:
      break;
    }
  goto ret0;

 L58067: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_CONCAT:
      goto L11325;
    case UNSPEC:
      goto L58071;
    case FIX:
      goto L19862;
    default:
     break;
   }
  goto ret0;

 L11325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2SImode))
    {
      operands[1] = x3;
      goto L11326;
    }
  goto ret0;

 L11326: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2SImode))
    {
      operands[2] = x3;
      goto L11327;
    }
  goto ret0;

 L11327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L11328;
  goto ret0;

 L11328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58072;
  goto ret0;

 L58072: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L11329;
      case 0LL:
        goto L11338;
      default:
        break;
      }
  goto ret0;

 L11329: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 1119 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 978;  /* mmx_punpckhdq */
    }
  goto ret0;

 L11338: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 1132 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 979;  /* mmx_punpckldq */
    }
  goto ret0;

 L58071: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 41)
    goto L19854;
  goto ret0;

 L19854: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19855;
    }
  goto ret0;

 L19855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L19856;
  goto ret0;

 L19856: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L19857;
  goto ret0;

 L19857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3821 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1919;  /* sse_cvtps2pi */
    }
  goto ret0;

 L19862: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19863;
    }
  goto ret0;

 L19863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L19864;
  goto ret0;

 L19864: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L19865;
  goto ret0;

 L19865: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3832 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1920;  /* sse_cvttps2pi */
    }
  goto ret0;

 L58068: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11369;
    }
  goto ret0;

 L11369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L11370;
  goto ret0;

 L11370: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L11371;
  goto ret0;

 L11371: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1226 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW_A))
    {
      return 983;  /* mmx_pswapdv2si2 */
    }
  goto ret0;

 L11381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L11382;
    }
  goto ret0;

 L11382: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1247 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 985;  /* *vec_dupv2si */
    }
  goto ret0;

 L11386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L58075;
  goto ret0;

 L58075: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L37183;
    case MINUS:
      goto L37204;
    case REG:
    case SUBREG:
    case MEM:
      goto L58074;
    default:
      goto ret0;
   }
 L58074: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L11387;
    }
  goto ret0;

 L37183: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37184;
  goto ret0;

 L37184: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2SImode))
    {
      operands[1] = x4;
      goto L37185;
    }
  goto ret0;

 L37185: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37186;
  goto ret0;

 L37186: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37187;
  goto ret0;

 L37187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37188;
  goto ret0;

 L37188: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L37189;
  goto ret0;

 L37189: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37190;
  goto ret0;

 L37190: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37191;
  goto ret0;

 L37191: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L37192;
  goto ret0;

 L37192: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37193;
  goto ret0;

 L37193: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SImode))
    {
      operands[2] = x4;
      goto L37194;
    }
  goto ret0;

 L37194: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37195;
  goto ret0;

 L37195: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37196;
  goto ret0;

 L37196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37197;
  goto ret0;

 L37197: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L37198;
  goto ret0;

 L37198: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37199;
  goto ret0;

 L37199: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3497;  /* ssse3_phadddv2si3 */
    }
  goto ret0;

 L37204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37205;
  goto ret0;

 L37205: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2SImode))
    {
      operands[1] = x4;
      goto L37206;
    }
  goto ret0;

 L37206: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37207;
  goto ret0;

 L37207: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37208;
  goto ret0;

 L37208: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37209;
  goto ret0;

 L37209: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L37210;
  goto ret0;

 L37210: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37211;
  goto ret0;

 L37211: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37212;
  goto ret0;

 L37212: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MINUS)
    goto L37213;
  goto ret0;

 L37213: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37214;
  goto ret0;

 L37214: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SImode))
    {
      operands[2] = x4;
      goto L37215;
    }
  goto ret0;

 L37215: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37216;
  goto ret0;

 L37216: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37217;
  goto ret0;

 L37217: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L37218;
  goto ret0;

 L37218: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L37219;
  goto ret0;

 L37219: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L37220;
  goto ret0;

 L37220: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3498;  /* ssse3_phsubdv2si3 */
    }
  goto ret0;

 L11387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11388;
    }
 L35533: ATTRIBUTE_UNUSED_LABEL
  if (reg_or_0_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L35534;
    }
  goto ret0;

 L11388: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1257 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !TARGET_SSE))
    {
      return 986;  /* *mmx_concatv2si */
    }
 L35528: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12882 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3448;  /* *vec_concatv2si_sse4_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L35533;

 L35534: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12908 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !TARGET_SSE4_1))
    {
      return 3449;  /* *vec_concatv2si */
    }
  goto ret0;

 L58055: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L58077;
    case 2:
      goto L58078;
    default:
      break;
    }
  goto ret0;

 L58077: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 41)
    goto L20491;
  goto ret0;

 L20491: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L20492;
    }
  goto ret0;

 L20492: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4211 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2000;  /* sse2_cvtpd2pi */
    }
  goto ret0;

 L58078: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 108)
    goto L37749;
  goto ret0;

 L37749: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L37750;
    }
  goto ret0;

 L37750: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L37751;
    }
  goto ret0;

 L37751: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13772 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3532;  /* ssse3_psignv2si3 */
    }
  goto ret0;

 L37979: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L37980;
    }
  goto ret0;

 L37980: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13912 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3566;  /* absv2si2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_16 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L10691;
    case MINUS:
      goto L10697;
    case MULT:
      goto L10703;
    case SMAX:
      goto L10709;
    case SMIN:
      goto L10715;
    case UNSPEC:
      goto L58103;
    case VEC_CONCAT:
      goto L10761;
    case VEC_MERGE:
      goto L10803;
    case FLOAT:
      goto L10843;
    case VEC_SELECT:
      goto L10855;
    case VEC_DUPLICATE:
      goto L10862;
    default:
     break;
   }
  goto ret0;

 L10691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10692;
    }
  goto ret0;

 L10692: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10693;
    }
  goto ret0;

 L10693: ATTRIBUTE_UNUSED_LABEL
  if (
#line 252 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && ix86_binary_operator_ok (PLUS, V2SFmode, operands)))
    {
      return 892;  /* *mmx_addv2sf3 */
    }
  goto ret0;

 L10697: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10698;
    }
  goto ret0;

 L10698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10699;
    }
  goto ret0;

 L10699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 274 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 893;  /* *mmx_subv2sf3 */
    }
  goto ret0;

 L10703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10704;
    }
  goto ret0;

 L10704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10705;
    }
  goto ret0;

 L10705: ATTRIBUTE_UNUSED_LABEL
  if (
#line 293 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && ix86_binary_operator_ok (MULT, V2SFmode, operands)))
    {
      return 894;  /* *mmx_mulv2sf3 */
    }
  goto ret0;

 L10709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SFmode)
    goto L58108;
  goto ret0;

 L58108: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10710;
    }
 L58109: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10722;
    }
  goto ret0;

 L10710: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10711;
    }
  x2 = XEXP (x1, 0);
  goto L58109;

 L10711: ATTRIBUTE_UNUSED_LABEL
  if (
#line 320 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V2SFmode, operands)))
    {
      return 895;  /* *mmx_smaxv2sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58109;

 L10722: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10723;
    }
  goto ret0;

 L10723: ATTRIBUTE_UNUSED_LABEL
  if (
#line 332 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 897;  /* *mmx_smaxv2sf3 */
    }
  goto ret0;

 L10715: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SFmode)
    goto L58110;
  goto ret0;

 L58110: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10716;
    }
 L58111: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10728;
    }
  goto ret0;

 L10716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10717;
    }
  x2 = XEXP (x1, 0);
  goto L58111;

 L10717: ATTRIBUTE_UNUSED_LABEL
  if (
#line 320 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V2SFmode, operands)))
    {
      return 896;  /* *mmx_sminv2sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58111;

 L10728: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10729;
    }
  goto ret0;

 L10729: ATTRIBUTE_UNUSED_LABEL
  if (
#line 332 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 898;  /* *mmx_sminv2sf3 */
    }
  goto ret0;

 L58103: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L58112;
    case 2:
      goto L58113;
    default:
      break;
    }
  goto ret0;

 L58112: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 98LL:
      goto L10733;
    case 101LL:
      goto L10750;
    default:
      break;
    }
  goto ret0;

 L10733: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10734;
    }
  goto ret0;

 L10734: ATTRIBUTE_UNUSED_LABEL
  if (
#line 342 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 899;  /* mmx_rcpv2sf2 */
    }
  goto ret0;

 L10750: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10751;
    }
  goto ret0;

 L10751: ATTRIBUTE_UNUSED_LABEL
  if (
#line 374 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 902;  /* mmx_rsqrtv2sf2 */
    }
  goto ret0;

 L58113: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 99LL:
      goto L10738;
    case 100LL:
      goto L10744;
    case 102LL:
      goto L10755;
    default:
      break;
    }
  goto ret0;

 L10738: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10739;
    }
  goto ret0;

 L10739: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10740;
    }
  goto ret0;

 L10740: ATTRIBUTE_UNUSED_LABEL
  if (
#line 353 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 900;  /* mmx_rcpit1v2sf3 */
    }
  goto ret0;

 L10744: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10745;
    }
  goto ret0;

 L10745: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10746;
    }
  goto ret0;

 L10746: ATTRIBUTE_UNUSED_LABEL
  if (
#line 364 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 901;  /* mmx_rcpit2v2sf3 */
    }
  goto ret0;

 L10755: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10756;
    }
  goto ret0;

 L10756: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L10757;
    }
  goto ret0;

 L10757: ATTRIBUTE_UNUSED_LABEL
  if (
#line 385 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 903;  /* mmx_rsqit1v2sf3 */
    }
  goto ret0;

 L10761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode)
    goto L58117;
  goto ret0;

 L58117: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L10762;
    case MINUS:
      goto L10783;
    case REG:
    case SUBREG:
    case MEM:
      goto L58119;
    default:
      goto ret0;
   }
 L58119: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L10868;
    }
  goto ret0;

 L10762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10763;
  goto ret0;

 L10763: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2SFmode))
    {
      operands[1] = x4;
      goto L10764;
    }
  goto ret0;

 L10764: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10765;
  goto ret0;

 L10765: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10766;
  goto ret0;

 L10766: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10767;
  goto ret0;

 L10767: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L10768;
  goto ret0;

 L10768: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10769;
  goto ret0;

 L10769: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L10770;
  goto ret0;

 L10770: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == PLUS)
    goto L10771;
  goto ret0;

 L10771: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10772;
  goto ret0;

 L10772: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SFmode))
    {
      operands[2] = x4;
      goto L10773;
    }
  goto ret0;

 L10773: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10774;
  goto ret0;

 L10774: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10775;
  goto ret0;

 L10775: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10776;
  goto ret0;

 L10776: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L10777;
  goto ret0;

 L10777: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10778;
  goto ret0;

 L10778: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 404 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 904;  /* mmx_haddv2sf3 */
    }
  goto ret0;

 L10783: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10784;
  goto ret0;

 L10784: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2SFmode))
    {
      operands[1] = x4;
      goto L10785;
    }
  goto ret0;

 L10785: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10786;
  goto ret0;

 L10786: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10787;
  goto ret0;

 L10787: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10788;
  goto ret0;

 L10788: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L10789;
  goto ret0;

 L10789: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10790;
  goto ret0;

 L10790: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L10791;
  goto ret0;

 L10791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == MINUS)
    goto L10792;
  goto ret0;

 L10792: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10793;
  goto ret0;

 L10793: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SFmode))
    {
      operands[2] = x4;
      goto L10794;
    }
  goto ret0;

 L10794: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10795;
  goto ret0;

 L10795: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10796;
  goto ret0;

 L10796: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L10797;
  goto ret0;

 L10797: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L10798;
  goto ret0;

 L10798: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L10799;
  goto ret0;

 L10799: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 423 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW_A))
    {
      return 905;  /* mmx_hsubv2sf3 */
    }
  goto ret0;

 L10868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L10869;
    }
 L22698: ATTRIBUTE_UNUSED_LABEL
  if (reg_or_0_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L22699;
    }
  goto ret0;

 L10869: ATTRIBUTE_UNUSED_LABEL
  if (
#line 564 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !TARGET_SSE))
    {
      return 916;  /* *mmx_concatv2sf */
    }
 L22693: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6329 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 2244;  /* *vec_concatv2sf_sse4_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L22698;

 L22699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6356 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2245;  /* *vec_concatv2sf_sse */
    }
  goto ret0;

 L10803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == PLUS)
    goto L10804;
  goto ret0;

 L10804: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2SFmode))
    {
      operands[1] = x3;
      goto L10805;
    }
  goto ret0;

 L10805: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2SFmode))
    {
      operands[2] = x3;
      goto L10806;
    }
  goto ret0;

 L10806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == MINUS)
    goto L10807;
  goto ret0;

 L10807: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L10808;
  goto ret0;

 L10808: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L10809;
  goto ret0;

 L10809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 437 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW_A))
    {
      return 906;  /* mmx_addsubv2sf3 */
    }
  goto ret0;

 L10843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SImode)
    goto L58120;
  goto ret0;

 L58120: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == SIGN_EXTEND)
    goto L10844;
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L10851;
    }
  goto ret0;

 L10844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == TRUNCATE)
    goto L10845;
  goto ret0;

 L10845: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SImode))
    {
      operands[1] = x4;
      goto L10846;
    }
  goto ret0;

 L10846: ATTRIBUTE_UNUSED_LABEL
  if (
#line 519 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW_A))
    {
      return 912;  /* mmx_pi2fw */
    }
  goto ret0;

 L10851: ATTRIBUTE_UNUSED_LABEL
  if (
#line 528 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 913;  /* mmx_floatv2si2 */
    }
  goto ret0;

 L10855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10856;
    }
  goto ret0;

 L10856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L10857;
  goto ret0;

 L10857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L10858;
  goto ret0;

 L10858: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW_A))
    {
      return 914;  /* mmx_pswapdv2sf2 */
    }
  goto ret0;

 L10862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L10863;
    }
  goto ret0;

 L10863: ATTRIBUTE_UNUSED_LABEL
  if (
#line 554 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 915;  /* *vec_dupv2sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_17 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 8LL:
        goto L33476;
      case 0LL:
        goto L33754;
      default:
        break;
      }
  goto ret0;

 L33476: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 72LL)
    goto L33477;
  goto ret0;

 L33477: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L33478;
  goto ret0;

 L33478: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 73LL)
    goto L33479;
  goto ret0;

 L33479: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L33480;
  goto ret0;

 L33480: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 74LL)
    goto L33481;
  goto ret0;

 L33481: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L33482;
  goto ret0;

 L33482: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 75LL)
    goto L33483;
  goto ret0;

 L33483: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33484;
  goto ret0;

 L33484: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 76LL)
    goto L33485;
  goto ret0;

 L33485: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33486;
  goto ret0;

 L33486: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 77LL)
    goto L33487;
  goto ret0;

 L33487: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33488;
  goto ret0;

 L33488: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 78LL)
    goto L33489;
  goto ret0;

 L33489: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33490;
  goto ret0;

 L33490: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 79LL)
    goto L33491;
  goto ret0;

 L33491: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 16);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L33492;
  goto ret0;

 L33492: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 17);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 88LL)
    goto L33493;
  goto ret0;

 L33493: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 18);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L33494;
  goto ret0;

 L33494: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 19);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 89LL)
    goto L33495;
  goto ret0;

 L33495: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 20);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L33496;
  goto ret0;

 L33496: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 21);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 90LL)
    goto L33497;
  goto ret0;

 L33497: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 22);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L33498;
  goto ret0;

 L33498: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 23);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 91LL)
    goto L33499;
  goto ret0;

 L33499: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 24);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33500;
  goto ret0;

 L33500: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 25);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 92LL)
    goto L33501;
  goto ret0;

 L33501: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 26);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33502;
  goto ret0;

 L33502: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 27);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 93LL)
    goto L33503;
  goto ret0;

 L33503: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 28);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33504;
  goto ret0;

 L33504: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 29);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 94LL)
    goto L33505;
  goto ret0;

 L33505: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 30);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L33506;
  goto ret0;

 L33506: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 31);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 95LL)
    goto L33507;
  goto ret0;

 L33507: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 32);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L33508;
  goto ret0;

 L33508: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 33);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 104LL)
    goto L33509;
  goto ret0;

 L33509: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 34);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L33510;
  goto ret0;

 L33510: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 35);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 105LL)
    goto L33511;
  goto ret0;

 L33511: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 36);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L33512;
  goto ret0;

 L33512: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 37);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 106LL)
    goto L33513;
  goto ret0;

 L33513: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 38);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L33514;
  goto ret0;

 L33514: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 39);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 107LL)
    goto L33515;
  goto ret0;

 L33515: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 40);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L33516;
  goto ret0;

 L33516: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 41);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 108LL)
    goto L33517;
  goto ret0;

 L33517: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 42);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L33518;
  goto ret0;

 L33518: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 43);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 109LL)
    goto L33519;
  goto ret0;

 L33519: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 44);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L33520;
  goto ret0;

 L33520: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 45);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 110LL)
    goto L33521;
  goto ret0;

 L33521: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 46);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L33522;
  goto ret0;

 L33522: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 47);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 111LL)
    goto L33523;
  goto ret0;

 L33523: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 48);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L33524;
  goto ret0;

 L33524: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 49);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 120LL)
    goto L33525;
  goto ret0;

 L33525: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 50);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L33526;
  goto ret0;

 L33526: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 51);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 121LL)
    goto L33527;
  goto ret0;

 L33527: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 52);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L33528;
  goto ret0;

 L33528: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 53);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 122LL)
    goto L33529;
  goto ret0;

 L33529: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 54);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (59)])
    goto L33530;
  goto ret0;

 L33530: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 55);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 123LL)
    goto L33531;
  goto ret0;

 L33531: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 56);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L33532;
  goto ret0;

 L33532: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 57);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 124LL)
    goto L33533;
  goto ret0;

 L33533: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 58);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L33534;
  goto ret0;

 L33534: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 59);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 125LL)
    goto L33535;
  goto ret0;

 L33535: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 60);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L33536;
  goto ret0;

 L33536: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 61);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 126LL)
    goto L33537;
  goto ret0;

 L33537: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 62);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (63)])
    goto L33538;
  goto ret0;

 L33538: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 63);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 127LL)
    goto L33539;
  goto ret0;

 L33539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L33540;
    }
  goto ret0;

 L33540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L33541;
    }
  goto ret0;

 L33541: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11162 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3338;  /* avx512bw_interleave_highv64qi_mask */
    }
  goto ret0;

 L33754: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (64)])
    goto L33755;
  goto ret0;

 L33755: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L33756;
  goto ret0;

 L33756: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 65LL)
    goto L33757;
  goto ret0;

 L33757: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L33758;
  goto ret0;

 L33758: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 66LL)
    goto L33759;
  goto ret0;

 L33759: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L33760;
  goto ret0;

 L33760: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 67LL)
    goto L33761;
  goto ret0;

 L33761: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L33762;
  goto ret0;

 L33762: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 68LL)
    goto L33763;
  goto ret0;

 L33763: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33764;
  goto ret0;

 L33764: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 69LL)
    goto L33765;
  goto ret0;

 L33765: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33766;
  goto ret0;

 L33766: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 70LL)
    goto L33767;
  goto ret0;

 L33767: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33768;
  goto ret0;

 L33768: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 71LL)
    goto L33769;
  goto ret0;

 L33769: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 16);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L33770;
  goto ret0;

 L33770: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 17);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 80LL)
    goto L33771;
  goto ret0;

 L33771: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 18);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L33772;
  goto ret0;

 L33772: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 19);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 81LL)
    goto L33773;
  goto ret0;

 L33773: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 20);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L33774;
  goto ret0;

 L33774: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 21);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 82LL)
    goto L33775;
  goto ret0;

 L33775: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 22);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L33776;
  goto ret0;

 L33776: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 23);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 83LL)
    goto L33777;
  goto ret0;

 L33777: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 24);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33778;
  goto ret0;

 L33778: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 25);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 84LL)
    goto L33779;
  goto ret0;

 L33779: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 26);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33780;
  goto ret0;

 L33780: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 27);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 85LL)
    goto L33781;
  goto ret0;

 L33781: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 28);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33782;
  goto ret0;

 L33782: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 29);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 86LL)
    goto L33783;
  goto ret0;

 L33783: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 30);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L33784;
  goto ret0;

 L33784: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 31);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 87LL)
    goto L33785;
  goto ret0;

 L33785: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 32);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L33786;
  goto ret0;

 L33786: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 33);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 96LL)
    goto L33787;
  goto ret0;

 L33787: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 34);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L33788;
  goto ret0;

 L33788: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 35);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 97LL)
    goto L33789;
  goto ret0;

 L33789: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 36);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L33790;
  goto ret0;

 L33790: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 37);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 98LL)
    goto L33791;
  goto ret0;

 L33791: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 38);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L33792;
  goto ret0;

 L33792: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 39);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 99LL)
    goto L33793;
  goto ret0;

 L33793: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 40);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L33794;
  goto ret0;

 L33794: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 41);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 100LL)
    goto L33795;
  goto ret0;

 L33795: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 42);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L33796;
  goto ret0;

 L33796: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 43);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 101LL)
    goto L33797;
  goto ret0;

 L33797: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 44);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L33798;
  goto ret0;

 L33798: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 45);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 102LL)
    goto L33799;
  goto ret0;

 L33799: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 46);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L33800;
  goto ret0;

 L33800: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 47);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 103LL)
    goto L33801;
  goto ret0;

 L33801: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 48);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L33802;
  goto ret0;

 L33802: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 49);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 112LL)
    goto L33803;
  goto ret0;

 L33803: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 50);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L33804;
  goto ret0;

 L33804: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 51);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 113LL)
    goto L33805;
  goto ret0;

 L33805: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 52);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L33806;
  goto ret0;

 L33806: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 53);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 114LL)
    goto L33807;
  goto ret0;

 L33807: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 54);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L33808;
  goto ret0;

 L33808: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 55);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 115LL)
    goto L33809;
  goto ret0;

 L33809: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 56);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L33810;
  goto ret0;

 L33810: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 57);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 116LL)
    goto L33811;
  goto ret0;

 L33811: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 58);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L33812;
  goto ret0;

 L33812: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 59);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 117LL)
    goto L33813;
  goto ret0;

 L33813: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 60);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L33814;
  goto ret0;

 L33814: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 61);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 118LL)
    goto L33815;
  goto ret0;

 L33815: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 62);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (55)])
    goto L33816;
  goto ret0;

 L33816: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 63);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 119LL)
    goto L33817;
  goto ret0;

 L33817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L33818;
    }
  goto ret0;

 L33818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L33819;
    }
  goto ret0;

 L33819: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11258 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3344;  /* avx512bw_interleave_lowv64qi_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_18 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L58258;
    case PLUS:
      goto L28224;
    case MINUS:
      goto L28239;
    case SS_PLUS:
      goto L28800;
    case US_PLUS:
      goto L28815;
    case SS_MINUS:
      goto L28830;
    case US_MINUS:
      goto L28845;
    case SMAX:
      goto L31099;
    case SMIN:
      goto L31114;
    case UMAX:
      goto L31129;
    case UMIN:
      goto L31144;
    case AND:
      goto L32070;
    case IOR:
      goto L32464;
    case XOR:
      goto L32479;
    case VEC_CONCAT:
      goto L33237;
    case VEC_SELECT:
      goto L33471;
    case TRUNCATE:
      goto L35563;
    case ABS:
      goto L37922;
    case VEC_DUPLICATE:
      goto L41708;
    case REG:
    case SUBREG:
    case MEM:
      goto L58230;
    default:
      goto L58231;
   }
 L58230: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L11642;
    }
 L58231: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L11768;
    }
  goto ret0;

 L58258: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L58266;
    case 2:
      goto L58267;
    case 3:
      goto L58268;
    default:
      break;
    }
  goto ret0;

 L58266: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 104)
    goto L12144;
  goto ret0;

 L12144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L12145;
    }
  goto ret0;

 L12145: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L12146;
    }
  goto ret0;

 L12146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L12147;
    }
  goto ret0;

 L12147: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1103;  /* *avx512f_loaddquv64qi_mask */
    }
  goto ret0;

 L58267: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 107LL:
      goto L37657;
    case 143LL:
      goto L41267;
    case 193LL:
      goto L51655;
    default:
      break;
    }
  goto ret0;

 L37657: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L37658;
    }
  goto ret0;

 L37658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L37659;
    }
  goto ret0;

 L37659: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L37660;
    }
  goto ret0;

 L37660: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L37661;
    }
  goto ret0;

 L37661: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3518;  /* avx512bw_pshufbv64qi3_mask */
    }
  goto ret0;

 L41267: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L41268;
    }
  goto ret0;

 L41268: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L41269;
    }
  goto ret0;

 L41269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L41270;
    }
  goto ret0;

 L41270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L41271;
    }
  goto ret0;

 L41271: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16530 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI && (64 == 64 || TARGET_AVX512VL))))
    {
      return 3900;  /* avx512bw_permvarv64qi_mask */
    }
  goto ret0;

 L51655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L51656;
    }
  goto ret0;

 L51656: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L51657;
    }
  goto ret0;

 L51657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L51658;
    }
  goto ret0;

 L51658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L51659;
    }
  goto ret0;

 L51659: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18718 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI)))
    {
      return 4705;  /* vpmultishiftqbv64qi_mask */
    }
  goto ret0;

 L58268: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 109LL:
      goto L37756;
    case 147LL:
      goto L42874;
    case 149LL:
      goto L43089;
    case 148LL:
      goto L43360;
    default:
      break;
    }
  goto ret0;

 L37756: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L37757;
    }
  goto ret0;

 L37757: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L37758;
    }
  goto ret0;

 L37758: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_mul_8_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L37759;
    }
  goto ret0;

 L37759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[4] = x2;
      goto L37760;
    }
  goto ret0;

 L37760: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[5] = x2;
      goto L37761;
    }
  goto ret0;

 L37761: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13789 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL)) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3533;  /* avx512bw_palignrv64qi_mask */
    }
  goto ret0;

 L42874: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L42875;
    }
  goto ret0;

 L42875: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L42876;
    }
  goto ret0;

 L42876: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[3] = x3;
      goto L42877;
    }
  goto ret0;

 L42877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V64QImode))
    {
      operands[4] = x2;
      goto L42878;
    }
  goto ret0;

 L42878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[5] = x2;
      goto L42879;
    }
  goto ret0;

 L42879: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4112;  /* avx512bw_vpermi2varv64qi3_maskz_1 */
    }
  goto ret0;

 L43089: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L43090;
    }
  goto ret0;

 L43090: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L43091;
    }
  goto ret0;

 L43091: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[3] = x3;
      goto L43092;
    }
  goto ret0;

 L43092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43093;
  goto ret0;

 L43093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L43094;
    }
  goto ret0;

 L43094: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4135;  /* avx512bw_vpermi2varv64qi3_mask */
    }
  goto ret0;

 L43360: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L43361;
    }
  goto ret0;

 L43361: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L43362;
    }
  goto ret0;

 L43362: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[3] = x3;
      goto L43363;
    }
  goto ret0;

 L43363: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V64QImode))
    {
      operands[4] = x2;
      goto L43364;
    }
 L43578: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43579;
  goto ret0;

 L43364: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[5] = x2;
      goto L43365;
    }
  x2 = XEXP (x1, 1);
  goto L43578;

 L43365: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17294 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4166;  /* avx512bw_vpermt2varv64qi3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43578;

 L43579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L43580;
    }
  goto ret0;

 L43580: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17339 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4189;  /* avx512bw_vpermt2varv64qi3_mask */
    }
  goto ret0;

 L28224: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L28225;
    }
  goto ret0;

 L28225: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L28226;
    }
  goto ret0;

 L28226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L28227;
    }
  goto ret0;

 L28227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L28228;
    }
  goto ret0;

 L28228: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V64QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2690;  /* *addv64qi3 */
    }
 L28690: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V64QImode, operands)))
    {
      return 2749;  /* *addv64qi3_mask */
    }
  goto ret0;

 L28239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L28240;
    }
  goto ret0;

 L28240: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L28241;
    }
  goto ret0;

 L28241: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L28242;
    }
  goto ret0;

 L28242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L28243;
    }
  goto ret0;

 L28243: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V64QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2692;  /* *subv64qi3 */
    }
 L28699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (MINUS, V64QImode, operands)))
    {
      return 2750;  /* *subv64qi3_mask */
    }
  goto ret0;

 L28800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L28801;
    }
  goto ret0;

 L28801: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L28802;
    }
  goto ret0;

 L28802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L28803;
    }
  goto ret0;

 L28803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L28804;
    }
  goto ret0;

 L28804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_PLUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2762;  /* *avx512bw_ssaddv64qi3_mask */
    }
  goto ret0;

 L28815: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L28816;
    }
  goto ret0;

 L28816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L28817;
    }
  goto ret0;

 L28817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L28818;
    }
  goto ret0;

 L28818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L28819;
    }
  goto ret0;

 L28819: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_PLUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2764;  /* *avx512bw_usaddv64qi3_mask */
    }
  goto ret0;

 L28830: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L28831;
    }
  goto ret0;

 L28831: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L28832;
    }
  goto ret0;

 L28832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L28833;
    }
  goto ret0;

 L28833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L28834;
    }
  goto ret0;

 L28834: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_MINUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2766;  /* *avx512bw_sssubv64qi3_mask */
    }
  goto ret0;

 L28845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L28846;
    }
  goto ret0;

 L28846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L28847;
    }
  goto ret0;

 L28847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L28848;
    }
  goto ret0;

 L28848: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L28849;
    }
  goto ret0;

 L28849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_MINUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2768;  /* *avx512bw_ussubv64qi3_mask */
    }
  goto ret0;

 L31099: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L31100;
    }
  goto ret0;

 L31100: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L31101;
    }
  goto ret0;

 L31101: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L31102;
    }
  goto ret0;

 L31102: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L31103;
    }
  goto ret0;

 L31103: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3032;  /* smaxv64qi3_mask */
    }
  goto ret0;

 L31114: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L31115;
    }
  goto ret0;

 L31115: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L31116;
    }
  goto ret0;

 L31116: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L31117;
    }
  goto ret0;

 L31117: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L31118;
    }
  goto ret0;

 L31118: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3034;  /* sminv64qi3_mask */
    }
  goto ret0;

 L31129: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L31130;
    }
  goto ret0;

 L31130: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L31131;
    }
  goto ret0;

 L31131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L31132;
    }
  goto ret0;

 L31132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L31133;
    }
  goto ret0;

 L31133: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3036;  /* umaxv64qi3_mask */
    }
  goto ret0;

 L31144: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L31145;
    }
  goto ret0;

 L31145: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L31146;
    }
  goto ret0;

 L31146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L31147;
    }
  goto ret0;

 L31147: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L31148;
    }
  goto ret0;

 L31148: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3038;  /* uminv64qi3_mask */
    }
  goto ret0;

 L32070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V64QImode)
    goto L58274;
  goto ret0;

 L58274: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32071;
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L32450;
    }
  goto ret0;

 L32071: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V64QImode))
    {
      operands[1] = x4;
      goto L32072;
    }
  goto ret0;

 L32072: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L32073;
    }
  goto ret0;

 L32073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L32074;
    }
  goto ret0;

 L32074: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L32075;
    }
  goto ret0;

 L32075: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3168;  /* *andnotv64qi3 */
    }
 L32298: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10896 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3193;  /* *andnotv64qi3_mask */
    }
  goto ret0;

 L32450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L32451;
    }
  goto ret0;

 L32451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L32452;
    }
  goto ret0;

 L32452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L32453;
    }
  goto ret0;

 L32453: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V64QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3212;  /* andv64qi3_mask */
    }
  goto ret0;

 L32464: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L32465;
    }
  goto ret0;

 L32465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L32466;
    }
  goto ret0;

 L32466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L32467;
    }
  goto ret0;

 L32467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L32468;
    }
  goto ret0;

 L32468: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V64QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3214;  /* iorv64qi3_mask */
    }
  goto ret0;

 L32479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L32480;
    }
  goto ret0;

 L32480: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L32481;
    }
  goto ret0;

 L32481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L32482;
    }
  goto ret0;

 L32482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L32483;
    }
  goto ret0;

 L32483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V64QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3216;  /* xorv64qi3_mask */
    }
  goto ret0;

 L33237: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32QImode)
    goto L58276;
  goto ret0;

 L58276: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L33238;
    case US_TRUNCATE:
      goto L33352;
    default:
     break;
   }
  goto ret0;

 L33238: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V32HImode))
    {
      operands[1] = x4;
      goto L33239;
    }
  goto ret0;

 L33239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V32QImode
      && GET_CODE (x3) == SS_TRUNCATE)
    goto L33240;
  goto ret0;

 L33240: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V32HImode))
    {
      operands[2] = x4;
      goto L33241;
    }
  goto ret0;

 L33241: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L33242;
    }
  goto ret0;

 L33242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L33243;
    }
  goto ret0;

 L33243: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11080 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3320;  /* avx512bw_packsswb_mask */
    }
  goto ret0;

 L33352: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V32HImode))
    {
      operands[1] = x4;
      goto L33353;
    }
  goto ret0;

 L33353: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V32QImode
      && GET_CODE (x3) == US_TRUNCATE)
    goto L33354;
  goto ret0;

 L33354: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V32HImode))
    {
      operands[2] = x4;
      goto L33355;
    }
  goto ret0;

 L33355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L33356;
    }
  goto ret0;

 L33356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L33357;
    }
  goto ret0;

 L33357: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3332;  /* avx512bw_packuswb_mask */
    }
  goto ret0;

 L33471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V128QImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L33472;
  goto ret0;

 L33472: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V64QImode))
    {
      operands[1] = x4;
      goto L33473;
    }
  goto ret0;

 L33473: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V64QImode))
    {
      operands[2] = x4;
      goto L33474;
    }
  goto ret0;

 L33474: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 64)
    goto L33475;
  goto ret0;

 L33475: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58278;
  goto ret0;

 L58278: ATTRIBUTE_UNUSED_LABEL
  return recog_17 (x0, insn, pnum_clobbers);

 L35563: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V64HImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L35564;
  goto ret0;

 L35564: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V64HImode
      && GET_CODE (x4) == PLUS)
    goto L35565;
  goto ret0;

 L35565: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V64HImode
      && GET_CODE (x5) == PLUS)
    goto L35566;
  goto ret0;

 L35566: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V64HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35567;
  goto ret0;

 L35567: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V64QImode))
    {
      operands[1] = x7;
      goto L35568;
    }
  goto ret0;

 L35568: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V64HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35569;
  goto ret0;

 L35569: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V64QImode))
    {
      operands[2] = x7;
      goto L35570;
    }
  goto ret0;

 L35570: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V64QImode))
    {
      operands[5] = x5;
      goto L35571;
    }
  goto ret0;

 L35571: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35572;
  goto ret0;

 L35572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L35573;
    }
  goto ret0;

 L35573: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L35574;
    }
  goto ret0;

 L35574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (PLUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3453;  /* *avx512bw_uavgv64qi3_mask */
    }
  goto ret0;

 L37922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L37923;
    }
  goto ret0;

 L37923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L37924;
    }
  goto ret0;

 L37924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L37925;
    }
  goto ret0;

 L37925: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3558;  /* absv64qi2_mask */
    }
  goto ret0;

 L41708: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode)
    goto L58280;
  goto ret0;

 L58280: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41709;
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L41867;
    }
  goto ret0;

 L41709: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L41710;
    }
  goto ret0;

 L41710: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41711;
  goto ret0;

 L41711: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41712;
  goto ret0;

 L41712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L41713;
    }
  goto ret0;

 L41713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L41714;
    }
  goto ret0;

 L41714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3950;  /* avx512bw_vec_dupv64qi_mask */
    }
  goto ret0;

 L41867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L41868;
    }
  goto ret0;

 L41868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L41869;
    }
  goto ret0;

 L41869: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3970;  /* avx512bw_vec_dup_gprv64qi_mask */
    }
  goto ret0;

 L11642: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L11643;
    }
  x2 = XEXP (x1, 0);
  goto L58231;

 L11643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L11644;
    }
  x2 = XEXP (x1, 0);
  goto L58231;

 L11644: ATTRIBUTE_UNUSED_LABEL
  if (
#line 962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1030;  /* avx512bw_loadv64qi_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58231;

 L11768: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L11769;
    }
  goto ret0;

 L11769: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L11770;
    }
  goto ret0;

 L11770: ATTRIBUTE_UNUSED_LABEL
  if (
#line 987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1048;  /* avx512bw_blendmv64qi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_19 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 8LL:
        goto L33404;
      case 0LL:
        goto L33682;
      default:
        break;
      }
  goto ret0;

 L33404: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 72LL)
    goto L33405;
  goto ret0;

 L33405: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L33406;
  goto ret0;

 L33406: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 73LL)
    goto L33407;
  goto ret0;

 L33407: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L33408;
  goto ret0;

 L33408: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 74LL)
    goto L33409;
  goto ret0;

 L33409: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L33410;
  goto ret0;

 L33410: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 75LL)
    goto L33411;
  goto ret0;

 L33411: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33412;
  goto ret0;

 L33412: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 76LL)
    goto L33413;
  goto ret0;

 L33413: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33414;
  goto ret0;

 L33414: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 77LL)
    goto L33415;
  goto ret0;

 L33415: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33416;
  goto ret0;

 L33416: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 78LL)
    goto L33417;
  goto ret0;

 L33417: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33418;
  goto ret0;

 L33418: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 79LL)
    goto L33419;
  goto ret0;

 L33419: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L33420;
  goto ret0;

 L33420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 88LL)
    goto L33421;
  goto ret0;

 L33421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L33422;
  goto ret0;

 L33422: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 89LL)
    goto L33423;
  goto ret0;

 L33423: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L33424;
  goto ret0;

 L33424: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 90LL)
    goto L33425;
  goto ret0;

 L33425: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L33426;
  goto ret0;

 L33426: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 91LL)
    goto L33427;
  goto ret0;

 L33427: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33428;
  goto ret0;

 L33428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 92LL)
    goto L33429;
  goto ret0;

 L33429: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33430;
  goto ret0;

 L33430: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 93LL)
    goto L33431;
  goto ret0;

 L33431: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33432;
  goto ret0;

 L33432: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 94LL)
    goto L33433;
  goto ret0;

 L33433: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L33434;
  goto ret0;

 L33434: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 95LL)
    goto L33435;
  goto ret0;

 L33435: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 32);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L33436;
  goto ret0;

 L33436: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 33);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 104LL)
    goto L33437;
  goto ret0;

 L33437: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 34);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L33438;
  goto ret0;

 L33438: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 35);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 105LL)
    goto L33439;
  goto ret0;

 L33439: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 36);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L33440;
  goto ret0;

 L33440: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 37);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 106LL)
    goto L33441;
  goto ret0;

 L33441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 38);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L33442;
  goto ret0;

 L33442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 39);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 107LL)
    goto L33443;
  goto ret0;

 L33443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 40);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L33444;
  goto ret0;

 L33444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 41);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 108LL)
    goto L33445;
  goto ret0;

 L33445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 42);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L33446;
  goto ret0;

 L33446: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 43);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 109LL)
    goto L33447;
  goto ret0;

 L33447: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 44);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L33448;
  goto ret0;

 L33448: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 45);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 110LL)
    goto L33449;
  goto ret0;

 L33449: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 46);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L33450;
  goto ret0;

 L33450: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 47);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 111LL)
    goto L33451;
  goto ret0;

 L33451: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 48);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L33452;
  goto ret0;

 L33452: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 49);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 120LL)
    goto L33453;
  goto ret0;

 L33453: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 50);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L33454;
  goto ret0;

 L33454: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 51);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 121LL)
    goto L33455;
  goto ret0;

 L33455: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 52);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L33456;
  goto ret0;

 L33456: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 53);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 122LL)
    goto L33457;
  goto ret0;

 L33457: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 54);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (59)])
    goto L33458;
  goto ret0;

 L33458: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 55);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 123LL)
    goto L33459;
  goto ret0;

 L33459: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 56);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L33460;
  goto ret0;

 L33460: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 57);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 124LL)
    goto L33461;
  goto ret0;

 L33461: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 58);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L33462;
  goto ret0;

 L33462: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 59);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 125LL)
    goto L33463;
  goto ret0;

 L33463: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 60);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L33464;
  goto ret0;

 L33464: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 61);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 126LL)
    goto L33465;
  goto ret0;

 L33465: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 62);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (63)])
    goto L33466;
  goto ret0;

 L33466: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 63);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 127LL
      && 
#line 11162 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3337;  /* avx512bw_interleave_highv64qi */
    }
  goto ret0;

 L33682: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (64)])
    goto L33683;
  goto ret0;

 L33683: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L33684;
  goto ret0;

 L33684: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 65LL)
    goto L33685;
  goto ret0;

 L33685: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L33686;
  goto ret0;

 L33686: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 66LL)
    goto L33687;
  goto ret0;

 L33687: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L33688;
  goto ret0;

 L33688: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 67LL)
    goto L33689;
  goto ret0;

 L33689: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L33690;
  goto ret0;

 L33690: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 68LL)
    goto L33691;
  goto ret0;

 L33691: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33692;
  goto ret0;

 L33692: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 69LL)
    goto L33693;
  goto ret0;

 L33693: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33694;
  goto ret0;

 L33694: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 70LL)
    goto L33695;
  goto ret0;

 L33695: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33696;
  goto ret0;

 L33696: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 71LL)
    goto L33697;
  goto ret0;

 L33697: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L33698;
  goto ret0;

 L33698: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 80LL)
    goto L33699;
  goto ret0;

 L33699: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L33700;
  goto ret0;

 L33700: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 81LL)
    goto L33701;
  goto ret0;

 L33701: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L33702;
  goto ret0;

 L33702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 82LL)
    goto L33703;
  goto ret0;

 L33703: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L33704;
  goto ret0;

 L33704: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 83LL)
    goto L33705;
  goto ret0;

 L33705: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33706;
  goto ret0;

 L33706: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 84LL)
    goto L33707;
  goto ret0;

 L33707: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33708;
  goto ret0;

 L33708: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 85LL)
    goto L33709;
  goto ret0;

 L33709: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33710;
  goto ret0;

 L33710: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 86LL)
    goto L33711;
  goto ret0;

 L33711: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L33712;
  goto ret0;

 L33712: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 87LL)
    goto L33713;
  goto ret0;

 L33713: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 32);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L33714;
  goto ret0;

 L33714: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 33);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 96LL)
    goto L33715;
  goto ret0;

 L33715: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 34);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L33716;
  goto ret0;

 L33716: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 35);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 97LL)
    goto L33717;
  goto ret0;

 L33717: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 36);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L33718;
  goto ret0;

 L33718: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 37);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 98LL)
    goto L33719;
  goto ret0;

 L33719: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 38);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L33720;
  goto ret0;

 L33720: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 39);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 99LL)
    goto L33721;
  goto ret0;

 L33721: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 40);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L33722;
  goto ret0;

 L33722: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 41);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 100LL)
    goto L33723;
  goto ret0;

 L33723: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 42);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L33724;
  goto ret0;

 L33724: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 43);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 101LL)
    goto L33725;
  goto ret0;

 L33725: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 44);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L33726;
  goto ret0;

 L33726: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 45);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 102LL)
    goto L33727;
  goto ret0;

 L33727: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 46);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L33728;
  goto ret0;

 L33728: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 47);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 103LL)
    goto L33729;
  goto ret0;

 L33729: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 48);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L33730;
  goto ret0;

 L33730: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 49);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 112LL)
    goto L33731;
  goto ret0;

 L33731: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 50);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L33732;
  goto ret0;

 L33732: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 51);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 113LL)
    goto L33733;
  goto ret0;

 L33733: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 52);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L33734;
  goto ret0;

 L33734: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 53);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 114LL)
    goto L33735;
  goto ret0;

 L33735: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 54);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L33736;
  goto ret0;

 L33736: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 55);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 115LL)
    goto L33737;
  goto ret0;

 L33737: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 56);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L33738;
  goto ret0;

 L33738: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 57);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 116LL)
    goto L33739;
  goto ret0;

 L33739: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 58);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L33740;
  goto ret0;

 L33740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 59);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 117LL)
    goto L33741;
  goto ret0;

 L33741: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 60);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L33742;
  goto ret0;

 L33742: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 61);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 118LL)
    goto L33743;
  goto ret0;

 L33743: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 62);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (55)])
    goto L33744;
  goto ret0;

 L33744: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 63);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == 119LL
      && 
#line 11258 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3343;  /* avx512bw_interleave_lowv64qi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_20 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11641;
    case UNSPEC:
      goto L58224;
    case PLUS:
      goto L28217;
    case MINUS:
      goto L28232;
    case SS_PLUS:
      goto L28793;
    case US_PLUS:
      goto L28808;
    case SS_MINUS:
      goto L28823;
    case US_MINUS:
      goto L28838;
    case SMAX:
      goto L31092;
    case SMIN:
      goto L31107;
    case UMAX:
      goto L31122;
    case UMIN:
      goto L31137;
    case AND:
      goto L32062;
    case IOR:
      goto L32457;
    case XOR:
      goto L32472;
    case VEC_CONCAT:
      goto L33228;
    case VEC_SELECT:
      goto L33399;
    case TRUNCATE:
      goto L35550;
    case ABS:
      goto L37813;
    case VEC_DUPLICATE:
      goto L41042;
    default:
     break;
   }
  goto ret0;

 L11641: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V64QImode)
    goto L58232;
 L21977: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L21978;
    }
  goto ret0;

 L58232: ATTRIBUTE_UNUSED_LABEL
  tem = recog_18 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L21977;

 L21978: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L21979;
    }
  goto ret0;

 L21979: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L21980;
    }
  goto ret0;

 L21980: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2189;  /* *avx512bw_cvtmask2bv64qi */
    }
  goto ret0;

 L58224: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L58282;
    case 2:
      goto L58283;
    case 3:
      goto L58285;
    default:
      break;
    }
  goto ret0;

 L58282: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 104)
    goto L12138;
  goto ret0;

 L12138: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L12139;
    }
  goto ret0;

 L12139: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1102;  /* *avx512f_loaddquv64qi */
    }
  goto ret0;

 L58283: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 107LL:
      goto L37650;
    case 143LL:
      goto L41260;
    case 193LL:
      goto L51648;
    default:
      break;
    }
  goto ret0;

 L37650: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L37651;
    }
  goto ret0;

 L37651: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L37652;
    }
  goto ret0;

 L37652: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && 1 && 1) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3517;  /* avx512bw_pshufbv64qi3 */
    }
  goto ret0;

 L41260: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L41261;
    }
  goto ret0;

 L41261: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L41262;
    }
  goto ret0;

 L41262: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16530 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI && 1))
    {
      return 3899;  /* avx512bw_permvarv64qi */
    }
  goto ret0;

 L51648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L51649;
    }
  goto ret0;

 L51649: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L51650;
    }
  goto ret0;

 L51650: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18718 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4704;  /* vpmultishiftqbv64qi */
    }
  goto ret0;

 L58285: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 147LL:
      goto L42866;
    case 148LL:
      goto L43352;
    default:
      break;
    }
  goto ret0;

 L42866: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L42867;
    }
  goto ret0;

 L42867: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L42868;
    }
  goto ret0;

 L42868: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L42869;
    }
  goto ret0;

 L42869: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4111;  /* avx512bw_vpermi2varv64qi3 */
    }
  goto ret0;

 L43352: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L43353;
    }
  goto ret0;

 L43353: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L43354;
    }
  goto ret0;

 L43354: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[3] = x2;
      goto L43355;
    }
  goto ret0;

 L43355: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17294 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI))
    {
      return 4165;  /* avx512bw_vpermt2varv64qi3 */
    }
  goto ret0;

 L28217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L28218;
    }
  goto ret0;

 L28218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L28219;
    }
  goto ret0;

 L28219: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V64QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2689;  /* *addv64qi3 */
    }
  goto ret0;

 L28232: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L28233;
    }
  goto ret0;

 L28233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L28234;
    }
  goto ret0;

 L28234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V64QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2691;  /* *subv64qi3 */
    }
  goto ret0;

 L28793: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L28794;
    }
  goto ret0;

 L28794: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L28795;
    }
  goto ret0;

 L28795: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_PLUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2761;  /* *avx512bw_ssaddv64qi3 */
    }
  goto ret0;

 L28808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L28809;
    }
  goto ret0;

 L28809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L28810;
    }
  goto ret0;

 L28810: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_PLUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2763;  /* *avx512bw_usaddv64qi3 */
    }
  goto ret0;

 L28823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L28824;
    }
  goto ret0;

 L28824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L28825;
    }
  goto ret0;

 L28825: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_MINUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2765;  /* *avx512bw_sssubv64qi3 */
    }
  goto ret0;

 L28838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L28839;
    }
  goto ret0;

 L28839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L28840;
    }
  goto ret0;

 L28840: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_MINUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2767;  /* *avx512bw_ussubv64qi3 */
    }
  goto ret0;

 L31092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L31093;
    }
  goto ret0;

 L31093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L31094;
    }
  goto ret0;

 L31094: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3031;  /* *smaxv64qi3 */
    }
  goto ret0;

 L31107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L31108;
    }
  goto ret0;

 L31108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L31109;
    }
  goto ret0;

 L31109: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3033;  /* *sminv64qi3 */
    }
  goto ret0;

 L31122: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L31123;
    }
  goto ret0;

 L31123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L31124;
    }
  goto ret0;

 L31124: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3035;  /* *umaxv64qi3 */
    }
  goto ret0;

 L31137: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L31138;
    }
  goto ret0;

 L31138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L31139;
    }
  goto ret0;

 L31139: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3037;  /* *uminv64qi3 */
    }
  goto ret0;

 L32062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V64QImode)
    goto L58288;
  goto ret0;

 L58288: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32063;
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L32443;
    }
  goto ret0;

 L32063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L32064;
    }
  goto ret0;

 L32064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L32065;
    }
  goto ret0;

 L32065: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3167;  /* *andnotv64qi3 */
    }
  goto ret0;

 L32443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L32444;
    }
  goto ret0;

 L32444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V64QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3211;  /* *andv64qi3 */
    }
  goto ret0;

 L32457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L32458;
    }
  goto ret0;

 L32458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L32459;
    }
  goto ret0;

 L32459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V64QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3213;  /* *iorv64qi3 */
    }
  goto ret0;

 L32472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L32473;
    }
  goto ret0;

 L32473: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L32474;
    }
  goto ret0;

 L32474: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V64QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3215;  /* *xorv64qi3 */
    }
  goto ret0;

 L33228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58290;
  goto ret0;

 L58290: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L33229;
    case US_TRUNCATE:
      goto L33343;
    case REG:
    case SUBREG:
      goto L58292;
    default:
      goto ret0;
   }
 L58292: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L44551;
    }
  goto ret0;

 L33229: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L33230;
    }
  goto ret0;

 L33230: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V32QImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L33231;
  goto ret0;

 L33231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L33232;
    }
  goto ret0;

 L33232: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11080 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3319;  /* avx512bw_packsswb */
    }
  goto ret0;

 L33343: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L33344;
    }
  goto ret0;

 L33344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V32QImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L33345;
  goto ret0;

 L33345: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L33346;
    }
  goto ret0;

 L33346: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3331;  /* avx512bw_packuswb */
    }
  goto ret0;

 L44551: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L44552;
    }
  goto ret0;

 L44552: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 211 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4306;  /* avx_vec_concatv64qi */
    }
  goto ret0;

 L33399: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V128QImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L33400;
  goto ret0;

 L33400: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L33401;
    }
  goto ret0;

 L33401: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L33402;
    }
  goto ret0;

 L33402: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 64)
    goto L33403;
  goto ret0;

 L33403: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58293;
  goto ret0;

 L58293: ATTRIBUTE_UNUSED_LABEL
  return recog_19 (x0, insn, pnum_clobbers);

 L35550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V64HImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L35551;
  goto ret0;

 L35551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V64HImode
      && GET_CODE (x3) == PLUS)
    goto L35552;
  goto ret0;

 L35552: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V64HImode
      && GET_CODE (x4) == PLUS)
    goto L35553;
  goto ret0;

 L35553: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V64HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35554;
  goto ret0;

 L35554: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V64QImode))
    {
      operands[1] = x6;
      goto L35555;
    }
  goto ret0;

 L35555: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V64HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35556;
  goto ret0;

 L35556: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V64QImode))
    {
      operands[2] = x6;
      goto L35557;
    }
  goto ret0;

 L35557: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V64QImode))
    {
      operands[3] = x4;
      goto L35558;
    }
  goto ret0;

 L35558: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (PLUS, V64QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3452;  /* *avx512bw_uavgv64qi3 */
    }
  goto ret0;

 L37813: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L37814;
    }
  goto ret0;

 L37814: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3540;  /* *absv64qi2 */
    }
  goto ret0;

 L41042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L58295;
    case V64QImode:
      goto L58296;
    default:
      break;
    }
  goto ret0;

 L58295: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41043;
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L41861;
    }
  goto ret0;

 L41043: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L41044;
    }
  goto ret0;

 L41044: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41045;
  goto ret0;

 L41045: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58298;
  goto ret0;

 L58298: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L58300;
  goto ret0;

 L58300: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3869;  /* avx2_pbroadcastv64qi */
    }
 L58301: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3949;  /* avx512bw_vec_dupv64qi */
    }
  goto ret0;

 L41861: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3969;  /* *avx512bw_vec_dup_gprv64qi */
    }
  goto ret0;

 L58296: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41478;
  goto ret0;

 L41478: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L41479;
    }
  goto ret0;

 L41479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41480;
  goto ret0;

 L41480: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3924;  /* avx512bw_vec_dupv64qi_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_21 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L58387;
    case PLUS:
      goto L28254;
    case MINUS:
      goto L28269;
    case SS_PLUS:
      goto L28860;
    case US_PLUS:
      goto L28875;
    case SS_MINUS:
      goto L28890;
    case US_MINUS:
      goto L28905;
    case SMAX:
      goto L31219;
    case SMIN:
      goto L31234;
    case UMAX:
      goto L31249;
    case UMIN:
      goto L31264;
    case AND:
      goto L32087;
    case IOR:
      goto L32509;
    case XOR:
      goto L32524;
    case VEC_CONCAT:
      goto L33256;
    case VEC_SELECT:
      goto L33585;
    case TRUNCATE:
      goto L35591;
    case ABS:
      goto L37938;
    case VEC_DUPLICATE:
      goto L41744;
    case REG:
    case SUBREG:
    case MEM:
      goto L58359;
    default:
      goto L58360;
   }
 L58359: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L11656;
    }
 L58360: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L11782;
    }
  goto ret0;

 L58387: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L58395;
    case 2:
      goto L58396;
    case 3:
      goto L58397;
    default:
      break;
    }
  goto ret0;

 L58395: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 104)
    goto L12118;
  goto ret0;

 L12118: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L12119;
    }
  goto ret0;

 L12119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L12120;
    }
  goto ret0;

 L12120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12121;
    }
  goto ret0;

 L12121: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW) && 
#line 291 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1099;  /* *avx_loaddquv32qi_mask */
    }
  goto ret0;

 L58396: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 107LL:
      goto L37672;
    case 143LL:
      goto L41297;
    case 193LL:
      goto L51685;
    default:
      break;
    }
  goto ret0;

 L37672: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L37673;
    }
  goto ret0;

 L37673: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L37674;
    }
  goto ret0;

 L37674: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L37675;
    }
  goto ret0;

 L37675: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L37676;
    }
  goto ret0;

 L37676: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3520;  /* avx2_pshufbv32qi3_mask */
    }
  goto ret0;

 L41297: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L41298;
    }
  goto ret0;

 L41298: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L41299;
    }
  goto ret0;

 L41299: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L41300;
    }
  goto ret0;

 L41300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L41301;
    }
  goto ret0;

 L41301: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16530 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI && (32 == 64 || TARGET_AVX512VL)) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3904;  /* avx512vl_permvarv32qi_mask */
    }
  goto ret0;

 L51685: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L51686;
    }
  goto ret0;

 L51686: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L51687;
    }
  goto ret0;

 L51687: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L51688;
    }
  goto ret0;

 L51688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L51689;
    }
  goto ret0;

 L51689: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18718 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4709;  /* vpmultishiftqbv32qi_mask */
    }
  goto ret0;

 L58397: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 109LL:
      goto L37766;
    case 147LL:
      goto L42908;
    case 149LL:
      goto L43109;
    case 148LL:
      goto L43394;
    default:
      break;
    }
  goto ret0;

 L37766: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L37767;
    }
  goto ret0;

 L37767: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L37768;
    }
  goto ret0;

 L37768: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_mul_8_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L37769;
    }
  goto ret0;

 L37769: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[4] = x2;
      goto L37770;
    }
  goto ret0;

 L37770: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L37771;
    }
  goto ret0;

 L37771: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13789 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3534;  /* avx2_palignrv32qi_mask */
    }
  goto ret0;

 L42908: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L42909;
    }
  goto ret0;

 L42909: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L42910;
    }
  goto ret0;

 L42910: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[3] = x3;
      goto L42911;
    }
  goto ret0;

 L42911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V32QImode))
    {
      operands[4] = x2;
      goto L42912;
    }
  goto ret0;

 L42912: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L42913;
    }
  goto ret0;

 L42913: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4116;  /* avx512vl_vpermi2varv32qi3_maskz_1 */
    }
  goto ret0;

 L43109: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L43110;
    }
  goto ret0;

 L43110: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L43111;
    }
  goto ret0;

 L43111: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[3] = x3;
      goto L43112;
    }
  goto ret0;

 L43112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43113;
  goto ret0;

 L43113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L43114;
    }
  goto ret0;

 L43114: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4137;  /* avx512vl_vpermi2varv32qi3_mask */
    }
  goto ret0;

 L43394: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L43395;
    }
  goto ret0;

 L43395: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L43396;
    }
  goto ret0;

 L43396: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[3] = x3;
      goto L43397;
    }
  goto ret0;

 L43397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V32QImode))
    {
      operands[4] = x2;
      goto L43398;
    }
 L43598: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43599;
  goto ret0;

 L43398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L43399;
    }
  x2 = XEXP (x1, 1);
  goto L43598;

 L43399: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17294 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4170;  /* avx512vl_vpermt2varv32qi3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43598;

 L43599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L43600;
    }
  goto ret0;

 L43600: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17339 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4191;  /* avx512vl_vpermt2varv32qi3_mask */
    }
  goto ret0;

 L28254: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L28255;
    }
  goto ret0;

 L28255: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L28256;
    }
  goto ret0;

 L28256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L28257;
    }
  goto ret0;

 L28257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28258;
    }
  goto ret0;

 L28258: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2694;  /* *addv32qi3 */
    }
 L28726: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2753;  /* *addv32qi3_mask */
    }
  goto ret0;

 L28269: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L28270;
    }
  goto ret0;

 L28270: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L28271;
    }
  goto ret0;

 L28271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L28272;
    }
  goto ret0;

 L28272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28273;
    }
  goto ret0;

 L28273: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V32QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2696;  /* *subv32qi3 */
    }
 L28735: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (MINUS, V32QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2754;  /* *subv32qi3_mask */
    }
  goto ret0;

 L28860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L28861;
    }
  goto ret0;

 L28861: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L28862;
    }
  goto ret0;

 L28862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L28863;
    }
  goto ret0;

 L28863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28864;
    }
  goto ret0;

 L28864: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_PLUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2770;  /* *avx2_ssaddv32qi3_mask */
    }
  goto ret0;

 L28875: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L28876;
    }
  goto ret0;

 L28876: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L28877;
    }
  goto ret0;

 L28877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L28878;
    }
  goto ret0;

 L28878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28879;
    }
  goto ret0;

 L28879: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_PLUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2772;  /* *avx2_usaddv32qi3_mask */
    }
  goto ret0;

 L28890: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L28891;
    }
  goto ret0;

 L28891: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L28892;
    }
  goto ret0;

 L28892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L28893;
    }
  goto ret0;

 L28893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28894;
    }
  goto ret0;

 L28894: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_MINUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2774;  /* *avx2_sssubv32qi3_mask */
    }
  goto ret0;

 L28905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L28906;
    }
  goto ret0;

 L28906: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L28907;
    }
  goto ret0;

 L28907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L28908;
    }
  goto ret0;

 L28908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28909;
    }
  goto ret0;

 L28909: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2776;  /* *avx2_ussubv32qi3_mask */
    }
  goto ret0;

 L31219: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L31220;
    }
  goto ret0;

 L31220: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L31221;
    }
  goto ret0;

 L31221: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L31222;
    }
  goto ret0;

 L31222: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31223;
    }
  goto ret0;

 L31223: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3048;  /* smaxv32qi3_mask */
    }
  goto ret0;

 L31234: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L31235;
    }
  goto ret0;

 L31235: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L31236;
    }
  goto ret0;

 L31236: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L31237;
    }
  goto ret0;

 L31237: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31238;
    }
  goto ret0;

 L31238: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3050;  /* sminv32qi3_mask */
    }
  goto ret0;

 L31249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L31250;
    }
  goto ret0;

 L31250: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L31251;
    }
  goto ret0;

 L31251: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L31252;
    }
  goto ret0;

 L31252: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31253;
    }
  goto ret0;

 L31253: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3052;  /* umaxv32qi3_mask */
    }
  goto ret0;

 L31264: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L31265;
    }
  goto ret0;

 L31265: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L31266;
    }
  goto ret0;

 L31266: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L31267;
    }
  goto ret0;

 L31267: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31268;
    }
  goto ret0;

 L31268: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3054;  /* uminv32qi3_mask */
    }
  goto ret0;

 L32087: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32QImode)
    goto L58403;
  goto ret0;

 L58403: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32088;
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L32495;
    }
  goto ret0;

 L32088: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V32QImode))
    {
      operands[1] = x4;
      goto L32089;
    }
  goto ret0;

 L32089: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L32090;
    }
  goto ret0;

 L32090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L32091;
    }
  goto ret0;

 L32091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32092;
    }
  goto ret0;

 L32092: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3170;  /* *andnotv32qi3 */
    }
 L32318: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10896 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3195;  /* *andnotv32qi3_mask */
    }
  goto ret0;

 L32495: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L32496;
    }
  goto ret0;

 L32496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L32497;
    }
  goto ret0;

 L32497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32498;
    }
  goto ret0;

 L32498: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V32QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3218;  /* andv32qi3_mask */
    }
  goto ret0;

 L32509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L32510;
    }
  goto ret0;

 L32510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L32511;
    }
  goto ret0;

 L32511: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L32512;
    }
  goto ret0;

 L32512: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32513;
    }
  goto ret0;

 L32513: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V32QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3220;  /* iorv32qi3_mask */
    }
  goto ret0;

 L32524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L32525;
    }
  goto ret0;

 L32525: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L32526;
    }
  goto ret0;

 L32526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L32527;
    }
  goto ret0;

 L32527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32528;
    }
  goto ret0;

 L32528: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V32QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3222;  /* xorv32qi3_mask */
    }
  goto ret0;

 L33256: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16QImode)
    goto L58405;
  goto ret0;

 L58405: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L33257;
    case US_TRUNCATE:
      goto L33371;
    default:
     break;
   }
  goto ret0;

 L33257: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16HImode))
    {
      operands[1] = x4;
      goto L33258;
    }
  goto ret0;

 L33258: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == SS_TRUNCATE)
    goto L33259;
  goto ret0;

 L33259: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16HImode))
    {
      operands[2] = x4;
      goto L33260;
    }
  goto ret0;

 L33260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L33261;
    }
  goto ret0;

 L33261: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L33262;
    }
  goto ret0;

 L33262: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11080 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3322;  /* avx2_packsswb_mask */
    }
  goto ret0;

 L33371: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16HImode))
    {
      operands[1] = x4;
      goto L33372;
    }
  goto ret0;

 L33372: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == US_TRUNCATE)
    goto L33373;
  goto ret0;

 L33373: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16HImode))
    {
      operands[2] = x4;
      goto L33374;
    }
  goto ret0;

 L33374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L33375;
    }
  goto ret0;

 L33375: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L33376;
    }
  goto ret0;

 L33376: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3334;  /* avx2_packuswb_mask */
    }
  goto ret0;

 L33585: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V64QImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L33586;
  goto ret0;

 L33586: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V32QImode))
    {
      operands[1] = x4;
      goto L33587;
    }
  goto ret0;

 L33587: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V32QImode))
    {
      operands[2] = x4;
      goto L33588;
    }
  goto ret0;

 L33588: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 32)
    goto L33589;
  goto ret0;

 L33589: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58407;
  goto ret0;

 L58407: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 8LL:
        goto L33590;
      case 0LL:
        goto L33868;
      default:
        break;
      }
  goto ret0;

 L33590: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L33591;
  goto ret0;

 L33591: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L33592;
  goto ret0;

 L33592: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L33593;
  goto ret0;

 L33593: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L33594;
  goto ret0;

 L33594: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L33595;
  goto ret0;

 L33595: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L33596;
  goto ret0;

 L33596: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L33597;
  goto ret0;

 L33597: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33598;
  goto ret0;

 L33598: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L33599;
  goto ret0;

 L33599: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33600;
  goto ret0;

 L33600: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L33601;
  goto ret0;

 L33601: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33602;
  goto ret0;

 L33602: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L33603;
  goto ret0;

 L33603: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33604;
  goto ret0;

 L33604: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L33605;
  goto ret0;

 L33605: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 16);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L33606;
  goto ret0;

 L33606: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 17);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L33607;
  goto ret0;

 L33607: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 18);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L33608;
  goto ret0;

 L33608: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 19);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L33609;
  goto ret0;

 L33609: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 20);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L33610;
  goto ret0;

 L33610: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 21);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L33611;
  goto ret0;

 L33611: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 22);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L33612;
  goto ret0;

 L33612: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 23);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (59)])
    goto L33613;
  goto ret0;

 L33613: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 24);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33614;
  goto ret0;

 L33614: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 25);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L33615;
  goto ret0;

 L33615: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 26);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33616;
  goto ret0;

 L33616: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 27);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L33617;
  goto ret0;

 L33617: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 28);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33618;
  goto ret0;

 L33618: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 29);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L33619;
  goto ret0;

 L33619: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 30);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L33620;
  goto ret0;

 L33620: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 31);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (63)])
    goto L33621;
  goto ret0;

 L33621: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L33622;
    }
  goto ret0;

 L33622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L33623;
    }
  goto ret0;

 L33623: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11190 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3340;  /* avx2_interleave_highv32qi_mask */
    }
  goto ret0;

 L33868: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L33869;
  goto ret0;

 L33869: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L33870;
  goto ret0;

 L33870: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L33871;
  goto ret0;

 L33871: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L33872;
  goto ret0;

 L33872: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L33873;
  goto ret0;

 L33873: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L33874;
  goto ret0;

 L33874: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L33875;
  goto ret0;

 L33875: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L33876;
  goto ret0;

 L33876: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L33877;
  goto ret0;

 L33877: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33878;
  goto ret0;

 L33878: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L33879;
  goto ret0;

 L33879: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33880;
  goto ret0;

 L33880: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L33881;
  goto ret0;

 L33881: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33882;
  goto ret0;

 L33882: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L33883;
  goto ret0;

 L33883: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 16);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L33884;
  goto ret0;

 L33884: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 17);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L33885;
  goto ret0;

 L33885: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 18);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L33886;
  goto ret0;

 L33886: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 19);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L33887;
  goto ret0;

 L33887: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 20);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L33888;
  goto ret0;

 L33888: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 21);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L33889;
  goto ret0;

 L33889: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 22);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L33890;
  goto ret0;

 L33890: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 23);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L33891;
  goto ret0;

 L33891: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 24);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33892;
  goto ret0;

 L33892: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 25);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L33893;
  goto ret0;

 L33893: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 26);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33894;
  goto ret0;

 L33894: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 27);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L33895;
  goto ret0;

 L33895: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 28);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33896;
  goto ret0;

 L33896: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 29);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L33897;
  goto ret0;

 L33897: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 30);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L33898;
  goto ret0;

 L33898: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 31);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (55)])
    goto L33899;
  goto ret0;

 L33899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L33900;
    }
  goto ret0;

 L33900: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L33901;
    }
  goto ret0;

 L33901: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 3346;  /* avx2_interleave_lowv32qi_mask */
    }
  goto ret0;

 L35591: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32HImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L35592;
  goto ret0;

 L35592: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V32HImode
      && GET_CODE (x4) == PLUS)
    goto L35593;
  goto ret0;

 L35593: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V32HImode
      && GET_CODE (x5) == PLUS)
    goto L35594;
  goto ret0;

 L35594: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V32HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35595;
  goto ret0;

 L35595: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V32QImode))
    {
      operands[1] = x7;
      goto L35596;
    }
  goto ret0;

 L35596: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V32HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35597;
  goto ret0;

 L35597: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V32QImode))
    {
      operands[2] = x7;
      goto L35598;
    }
  goto ret0;

 L35598: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V32QImode))
    {
      operands[5] = x5;
      goto L35599;
    }
  goto ret0;

 L35599: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35600;
  goto ret0;

 L35600: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L35601;
    }
  goto ret0;

 L35601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L35602;
    }
  goto ret0;

 L35602: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3455;  /* *avx2_uavgv32qi3_mask */
    }
  goto ret0;

 L37938: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L37939;
    }
  goto ret0;

 L37939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L37940;
    }
  goto ret0;

 L37940: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L37941;
    }
  goto ret0;

 L37941: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3560;  /* absv32qi2_mask */
    }
  goto ret0;

 L41744: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode)
    goto L58409;
  goto ret0;

 L58409: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41745;
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L41893;
    }
  goto ret0;

 L41745: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L41746;
    }
  goto ret0;

 L41746: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41747;
  goto ret0;

 L41747: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41748;
  goto ret0;

 L41748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L41749;
    }
  goto ret0;

 L41749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L41750;
    }
  goto ret0;

 L41750: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3954;  /* avx512vl_vec_dupv32qi_mask */
    }
  goto ret0;

 L41893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L41894;
    }
  goto ret0;

 L41894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L41895;
    }
  goto ret0;

 L41895: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3974;  /* avx512vl_vec_dup_gprv32qi_mask */
    }
  goto ret0;

 L11656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L11657;
    }
  x2 = XEXP (x1, 0);
  goto L58360;

 L11657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L11658;
    }
  x2 = XEXP (x1, 0);
  goto L58360;

 L11658: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1032;  /* avx512vl_loadv32qi_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58360;

 L11782: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L11783;
    }
  goto ret0;

 L11783: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L11784;
    }
  goto ret0;

 L11784: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1050;  /* avx512vl_blendmv32qi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_22 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11655;
    case UNSPEC:
      goto L58349;
    case PLUS:
      goto L28247;
    case MINUS:
      goto L28262;
    case SS_PLUS:
      goto L28853;
    case US_PLUS:
      goto L28868;
    case SS_MINUS:
      goto L28883;
    case US_MINUS:
      goto L28898;
    case SMAX:
      goto L30660;
    case SMIN:
      goto L30666;
    case UMAX:
      goto L30672;
    case UMIN:
      goto L30678;
    case EQ:
      goto L31596;
    case GT:
      goto L31818;
    case AND:
      goto L32079;
    case IOR:
      goto L32502;
    case XOR:
      goto L32517;
    case VEC_CONCAT:
      goto L33247;
    case VEC_SELECT:
      goto L33545;
    case TRUNCATE:
      goto L35578;
    case ABS:
      goto L37818;
    case IF_THEN_ELSE:
      goto L40016;
    case VEC_DUPLICATE:
      goto L41049;
    default:
     break;
   }
  goto ret0;

 L11655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58361;
 L21991: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L21992;
    }
  goto ret0;

 L58361: ATTRIBUTE_UNUSED_LABEL
  tem = recog_21 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L21991;

 L21992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L21993;
    }
  goto ret0;

 L21993: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L21994;
    }
  goto ret0;

 L21994: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2191;  /* *avx512vl_cvtmask2bv32qi */
    }
  goto ret0;

 L58349: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L58411;
    case 2:
      goto L58413;
    case 3:
      goto L58415;
    default:
      break;
    }
  goto ret0;

 L58411: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12112;
    case 106LL:
      goto L12424;
    default:
      break;
    }
  goto ret0;

 L12112: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L12113;
    }
  goto ret0;

 L12113: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 291 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1098;  /* *avx_loaddquv32qi */
    }
  goto ret0;

 L12424: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L12425;
    }
  goto ret0;

 L12425: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1477 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3) && 
#line 291 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1146;  /* avx_lddqu256 */
    }
  goto ret0;

 L58413: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 107LL:
      goto L37665;
    case 108LL:
      goto L37701;
    case 143LL:
      goto L41290;
    case 193LL:
      goto L51678;
    default:
      break;
    }
  goto ret0;

 L37665: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L37666;
    }
  goto ret0;

 L37666: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L37667;
    }
  goto ret0;

 L37667: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && 1 && 1) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3519;  /* avx2_pshufbv32qi3 */
    }
  goto ret0;

 L37701: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L37702;
    }
  goto ret0;

 L37702: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L37703;
    }
  goto ret0;

 L37703: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13755 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 384 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3524;  /* avx2_psignv32qi3 */
    }
  goto ret0;

 L41290: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L41291;
    }
  goto ret0;

 L41291: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L41292;
    }
  goto ret0;

 L41292: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16530 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI && 1) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3903;  /* avx512vl_permvarv32qi */
    }
  goto ret0;

 L51678: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L51679;
    }
  goto ret0;

 L51679: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L51680;
    }
  goto ret0;

 L51680: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18718 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4708;  /* vpmultishiftqbv32qi */
    }
  goto ret0;

 L58415: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 118LL:
      goto L38134;
    case 114LL:
      goto L38205;
    case 147LL:
      goto L42900;
    case 148LL:
      goto L43386;
    default:
      break;
    }
  goto ret0;

 L38134: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L38135;
    }
  goto ret0;

 L38135: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L38136;
    }
  goto ret0;

 L38136: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38137;
    }
  goto ret0;

 L38137: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14092 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 312 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3590;  /* avx2_mpsadbw */
    }
  goto ret0;

 L38205: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L38206;
    }
  goto ret0;

 L38206: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L38207;
    }
  goto ret0;

 L38207: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L38208;
    }
  goto ret0;

 L38208: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 312 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3598;  /* avx2_pblendvb */
    }
  goto ret0;

 L42900: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L42901;
    }
  goto ret0;

 L42901: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L42902;
    }
  goto ret0;

 L42902: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L42903;
    }
  goto ret0;

 L42903: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4115;  /* avx512vl_vpermi2varv32qi3 */
    }
  goto ret0;

 L43386: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L43387;
    }
  goto ret0;

 L43387: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L43388;
    }
  goto ret0;

 L43388: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L43389;
    }
  goto ret0;

 L43389: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17294 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4169;  /* avx512vl_vpermt2varv32qi3 */
    }
  goto ret0;

 L28247: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L28248;
    }
  goto ret0;

 L28248: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L28249;
    }
  goto ret0;

 L28249: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2693;  /* *addv32qi3 */
    }
  goto ret0;

 L28262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L28263;
    }
  goto ret0;

 L28263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L28264;
    }
  goto ret0;

 L28264: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V32QImode, operands)) && 
#line 284 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2695;  /* *subv32qi3 */
    }
  goto ret0;

 L28853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L28854;
    }
  goto ret0;

 L28854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L28855;
    }
  goto ret0;

 L28855: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_PLUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2769;  /* *avx2_ssaddv32qi3 */
    }
  goto ret0;

 L28868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L28869;
    }
  goto ret0;

 L28869: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L28870;
    }
  goto ret0;

 L28870: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_PLUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2771;  /* *avx2_usaddv32qi3 */
    }
  goto ret0;

 L28883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L28884;
    }
  goto ret0;

 L28884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L28885;
    }
  goto ret0;

 L28885: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_MINUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2773;  /* *avx2_sssubv32qi3 */
    }
  goto ret0;

 L28898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L28899;
    }
  goto ret0;

 L28899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L28900;
    }
  goto ret0;

 L28900: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2775;  /* *avx2_ussubv32qi3 */
    }
  goto ret0;

 L30660: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58421;
  goto ret0;

 L58421: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L30661;
    }
 L58422: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31213;
    }
  goto ret0;

 L30661: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L30662;
    }
  x2 = XEXP (x1, 0);
  goto L58422;

 L30662: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (SMAX, V32QImode, operands)))
    {
      return 2971;  /* *avx2_smaxv32qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58422;

 L31213: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31214;
    }
  goto ret0;

 L31214: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3047;  /* *smaxv32qi3 */
    }
  goto ret0;

 L30666: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58423;
  goto ret0;

 L58423: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L30667;
    }
 L58424: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31228;
    }
  goto ret0;

 L30667: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L30668;
    }
  x2 = XEXP (x1, 0);
  goto L58424;

 L30668: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (SMIN, V32QImode, operands)))
    {
      return 2972;  /* *avx2_sminv32qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58424;

 L31228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31229;
    }
  goto ret0;

 L31229: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3049;  /* *sminv32qi3 */
    }
  goto ret0;

 L30672: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58425;
  goto ret0;

 L58425: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L30673;
    }
 L58426: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31243;
    }
  goto ret0;

 L30673: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L30674;
    }
  x2 = XEXP (x1, 0);
  goto L58426;

 L30674: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (UMAX, V32QImode, operands)))
    {
      return 2973;  /* *avx2_umaxv32qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58426;

 L31243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31244;
    }
  goto ret0;

 L31244: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3051;  /* *umaxv32qi3 */
    }
  goto ret0;

 L30678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58427;
  goto ret0;

 L58427: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L30679;
    }
 L58428: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31258;
    }
  goto ret0;

 L30679: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L30680;
    }
  x2 = XEXP (x1, 0);
  goto L58428;

 L30680: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (UMIN, V32QImode, operands)))
    {
      return 2974;  /* *avx2_uminv32qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58428;

 L31258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31259;
    }
  goto ret0;

 L31259: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3053;  /* *uminv32qi3 */
    }
  goto ret0;

 L31596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31597;
    }
  goto ret0;

 L31597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31598;
    }
  goto ret0;

 L31598: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10383 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (EQ, V32QImode, operands)))
    {
      return 3099;  /* *avx2_eqv32qi3 */
    }
  goto ret0;

 L31818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L31819;
    }
  goto ret0;

 L31819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L31820;
    }
  goto ret0;

 L31820: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3132;  /* avx2_gtv32qi3 */
    }
  goto ret0;

 L32079: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58429;
  goto ret0;

 L58429: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32080;
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L32488;
    }
  goto ret0;

 L32080: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L32081;
    }
  goto ret0;

 L32081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L32082;
    }
  goto ret0;

 L32082: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3169;  /* *andnotv32qi3 */
    }
  goto ret0;

 L32488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L32489;
    }
  goto ret0;

 L32489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V32QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3217;  /* *andv32qi3 */
    }
  goto ret0;

 L32502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L32503;
    }
  goto ret0;

 L32503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L32504;
    }
  goto ret0;

 L32504: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V32QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3219;  /* *iorv32qi3 */
    }
  goto ret0;

 L32517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L32518;
    }
  goto ret0;

 L32518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L32519;
    }
  goto ret0;

 L32519: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V32QImode, operands)) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3221;  /* *xorv32qi3 */
    }
  goto ret0;

 L33247: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58431;
  goto ret0;

 L58431: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L33248;
    case US_TRUNCATE:
      goto L33362;
    case VEC_SELECT:
      goto L43975;
    case SUBREG:
    case MEM:
      goto L58433;
    default:
      goto L58434;
   }
 L58433: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L42110;
    }
 L58434: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L42180;
    }
 L58435: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L43952;
    }
 L58437: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L44515;
    }
  goto ret0;

 L33248: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L33249;
    }
  goto ret0;

 L33249: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L33250;
  goto ret0;

 L33250: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L33251;
    }
  goto ret0;

 L33251: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11080 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3321;  /* avx2_packsswb */
    }
  goto ret0;

 L33362: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L33363;
    }
  goto ret0;

 L33363: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L33364;
  goto ret0;

 L33364: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L33365;
    }
  goto ret0;

 L33365: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 315 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3333;  /* avx2_packuswb */
    }
  goto ret0;

 L43975: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L43976;
    }
  goto ret0;

 L43976: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L43977;
  goto ret0;

 L43977: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43978;
  goto ret0;

 L43978: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43979;
  goto ret0;

 L43979: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43980;
  goto ret0;

 L43980: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43981;
  goto ret0;

 L43981: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L43982;
  goto ret0;

 L43982: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L43983;
  goto ret0;

 L43983: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L43984;
  goto ret0;

 L43984: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L43985;
  goto ret0;

 L43985: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L43986;
  goto ret0;

 L43986: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L43987;
  goto ret0;

 L43987: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L43988;
  goto ret0;

 L43988: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L43989;
  goto ret0;

 L43989: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L43990;
  goto ret0;

 L43990: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L43991;
  goto ret0;

 L43991: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L43992;
  goto ret0;

 L43992: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L43993;
  goto ret0;

 L43993: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L43994;
    }
  goto ret0;

 L43994: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17674 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4226;  /* vec_set_hi_v32qi */
    }
  goto ret0;

 L42110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16768 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4008;  /* avx2_vbroadcasti128_v32qi */
    }
  x2 = XEXP (x1, 0);
  goto L58434;

 L42180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16851 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4022;  /* avx_vbroadcastf128_v32qi */
    }
  x2 = XEXP (x1, 0);
  goto L58435;

 L43952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L43953;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L43954;
    }
  x2 = XEXP (x1, 0);
  goto L58437;

 L43954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L43955;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43955: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L43956;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43956: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L43957;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43957: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L43958;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43958: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L43959;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43959: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L43960;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43960: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L43961;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43961: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L43962;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43962: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L43963;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43963: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L43964;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43964: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L43965;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43965: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L43966;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43966: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L43967;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43967: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L43968;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43968: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L43969;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43969: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L43970;
  x2 = XEXP (x1, 0);
  goto L58437;

 L43970: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 17652 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4225;  /* vec_set_lo_v32qi */
    }
  x2 = XEXP (x1, 0);
  goto L58437;

 L44515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L44516;
    }
  goto ret0;

 L44516: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4300;  /* avx_vec_concatv32qi */
    }
  goto ret0;

 L33545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V64QImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L33546;
  goto ret0;

 L33546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L33547;
    }
  goto ret0;

 L33547: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L33548;
    }
  goto ret0;

 L33548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 32)
    goto L33549;
  goto ret0;

 L33549: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58438;
  goto ret0;

 L58438: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 8LL:
        goto L33550;
      case 0LL:
        goto L33828;
      default:
        break;
      }
  goto ret0;

 L33550: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L33551;
  goto ret0;

 L33551: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L33552;
  goto ret0;

 L33552: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L33553;
  goto ret0;

 L33553: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L33554;
  goto ret0;

 L33554: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L33555;
  goto ret0;

 L33555: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L33556;
  goto ret0;

 L33556: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L33557;
  goto ret0;

 L33557: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33558;
  goto ret0;

 L33558: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L33559;
  goto ret0;

 L33559: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33560;
  goto ret0;

 L33560: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L33561;
  goto ret0;

 L33561: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33562;
  goto ret0;

 L33562: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L33563;
  goto ret0;

 L33563: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33564;
  goto ret0;

 L33564: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L33565;
  goto ret0;

 L33565: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L33566;
  goto ret0;

 L33566: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L33567;
  goto ret0;

 L33567: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L33568;
  goto ret0;

 L33568: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L33569;
  goto ret0;

 L33569: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L33570;
  goto ret0;

 L33570: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L33571;
  goto ret0;

 L33571: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L33572;
  goto ret0;

 L33572: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (59)])
    goto L33573;
  goto ret0;

 L33573: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33574;
  goto ret0;

 L33574: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L33575;
  goto ret0;

 L33575: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33576;
  goto ret0;

 L33576: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L33577;
  goto ret0;

 L33577: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33578;
  goto ret0;

 L33578: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L33579;
  goto ret0;

 L33579: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L33580;
  goto ret0;

 L33580: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (63)]
      && 
#line 11190 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3339;  /* avx2_interleave_highv32qi */
    }
  goto ret0;

 L33828: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L33829;
  goto ret0;

 L33829: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L33830;
  goto ret0;

 L33830: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L33831;
  goto ret0;

 L33831: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L33832;
  goto ret0;

 L33832: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L33833;
  goto ret0;

 L33833: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L33834;
  goto ret0;

 L33834: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L33835;
  goto ret0;

 L33835: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L33836;
  goto ret0;

 L33836: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L33837;
  goto ret0;

 L33837: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33838;
  goto ret0;

 L33838: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L33839;
  goto ret0;

 L33839: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33840;
  goto ret0;

 L33840: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L33841;
  goto ret0;

 L33841: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33842;
  goto ret0;

 L33842: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L33843;
  goto ret0;

 L33843: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L33844;
  goto ret0;

 L33844: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L33845;
  goto ret0;

 L33845: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L33846;
  goto ret0;

 L33846: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L33847;
  goto ret0;

 L33847: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L33848;
  goto ret0;

 L33848: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L33849;
  goto ret0;

 L33849: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L33850;
  goto ret0;

 L33850: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L33851;
  goto ret0;

 L33851: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33852;
  goto ret0;

 L33852: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L33853;
  goto ret0;

 L33853: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33854;
  goto ret0;

 L33854: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L33855;
  goto ret0;

 L33855: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33856;
  goto ret0;

 L33856: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L33857;
  goto ret0;

 L33857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L33858;
  goto ret0;

 L33858: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (55)]
      && 
#line 11286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1 && 1))
    {
      return 3345;  /* avx2_interleave_lowv32qi */
    }
  goto ret0;

 L35578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32HImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L35579;
  goto ret0;

 L35579: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32HImode
      && GET_CODE (x3) == PLUS)
    goto L35580;
  goto ret0;

 L35580: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V32HImode
      && GET_CODE (x4) == PLUS)
    goto L35581;
  goto ret0;

 L35581: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V32HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35582;
  goto ret0;

 L35582: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32QImode))
    {
      operands[1] = x6;
      goto L35583;
    }
  goto ret0;

 L35583: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V32HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35584;
  goto ret0;

 L35584: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32QImode))
    {
      operands[2] = x6;
      goto L35585;
    }
  goto ret0;

 L35585: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V32QImode))
    {
      operands[3] = x4;
      goto L35586;
    }
  goto ret0;

 L35586: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (PLUS, V32QImode, operands)) && 
#line 371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3454;  /* *avx2_uavgv32qi3 */
    }
  goto ret0;

 L37818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L37819;
    }
  goto ret0;

 L37819: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3541;  /* *absv32qi2 */
    }
  goto ret0;

 L40016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[3] = x2;
      goto L40017;
    }
  goto ret0;

 L40017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L40018;
    }
  goto ret0;

 L40018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L40019;
    }
  goto ret0;

 L40019: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 190 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3775;  /* xop_pcmov_v32qi256 */
    }
  goto ret0;

 L41049: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode)
    goto L58440;
  goto ret0;

 L58440: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41050;
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L41887;
    }
  goto ret0;

 L41050: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L58442;
    case V32QImode:
      goto L58443;
    default:
      break;
    }
  goto ret0;

 L58442: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L41051;
    }
  goto ret0;

 L41051: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41052;
  goto ret0;

 L41052: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58444;
  goto ret0;

 L58444: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L58446;
  goto ret0;

 L58446: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 278 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3870;  /* avx2_pbroadcastv32qi */
    }
 L58447: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3953;  /* avx512vl_vec_dupv32qi */
    }
  goto ret0;

 L58443: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L41114;
    }
  goto ret0;

 L41114: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41115;
  goto ret0;

 L41115: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3879;  /* avx2_pbroadcastv32qi_1 */
    }
  goto ret0;

 L41887: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3973;  /* *avx512vl_vec_dup_gprv32qi */
    }
 L42130: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16786 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4012;  /* *vec_dupv32qi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_23 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (nonimmediate_operand (x1, V32QImode))
    {
      operands[0] = x1;
      goto L23463;
    }
 L57085: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V32QImode))
    {
      operands[0] = x1;
      goto L11654;
    }
 L57103: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V32QImode))
    {
      operands[0] = x1;
      goto L11906;
    }
  goto ret0;

 L23463: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32QImode)
    goto L58307;
 L11476: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V32QImode))
    {
      operands[1] = x1;
      goto L11477;
    }
  x1 = XEXP (x0, 0);
  goto L57085;

 L58307: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L23464;
    case SS_TRUNCATE:
      goto L25892;
    case TRUNCATE:
      goto L25897;
    case US_TRUNCATE:
      goto L25902;
    case VEC_MERGE:
      goto L25907;
    default:
     break;
   }
  goto L11476;

 L23464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L23465;
    }
  goto L11476;

 L23465: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 32)
    goto L23466;
  goto L11476;

 L23466: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58312;
  goto L11476;

 L58312: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 0LL:
        goto L23467;
      case 32LL:
        goto L23504;
      default:
        break;
      }
  goto L11476;

 L23467: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23468;
  goto L11476;

 L23468: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23469;
  goto L11476;

 L23469: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23470;
  goto L11476;

 L23470: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23471;
  goto L11476;

 L23471: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23472;
  goto L11476;

 L23472: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23473;
  goto L11476;

 L23473: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23474;
  goto L11476;

 L23474: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23475;
  goto L11476;

 L23475: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23476;
  goto L11476;

 L23476: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23477;
  goto L11476;

 L23477: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23478;
  goto L11476;

 L23478: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23479;
  goto L11476;

 L23479: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23480;
  goto L11476;

 L23480: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23481;
  goto L11476;

 L23481: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L23482;
  goto L11476;

 L23482: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L23483;
  goto L11476;

 L23483: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L23484;
  goto L11476;

 L23484: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L23485;
  goto L11476;

 L23485: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L23486;
  goto L11476;

 L23486: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L23487;
  goto L11476;

 L23487: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L23488;
  goto L11476;

 L23488: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L23489;
  goto L11476;

 L23489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L23490;
  goto L11476;

 L23490: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L23491;
  goto L11476;

 L23491: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L23492;
  goto L11476;

 L23492: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L23493;
  goto L11476;

 L23493: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L23494;
  goto L11476;

 L23494: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L23495;
  goto L11476;

 L23495: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L23496;
  goto L11476;

 L23496: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L23497;
  goto L11476;

 L23497: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 7234 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2312;  /* vec_extract_lo_v64qi */
    }
  goto L11476;

 L23504: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L23505;
  goto L11476;

 L23505: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L23506;
  goto L11476;

 L23506: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L23507;
  goto L11476;

 L23507: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L23508;
  goto L11476;

 L23508: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L23509;
  goto L11476;

 L23509: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L23510;
  goto L11476;

 L23510: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L23511;
  goto L11476;

 L23511: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L23512;
  goto L11476;

 L23512: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L23513;
  goto L11476;

 L23513: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L23514;
  goto L11476;

 L23514: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L23515;
  goto L11476;

 L23515: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L23516;
  goto L11476;

 L23516: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L23517;
  goto L11476;

 L23517: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L23518;
  goto L11476;

 L23518: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L23519;
  goto L11476;

 L23519: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L23520;
  goto L11476;

 L23520: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L23521;
  goto L11476;

 L23521: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L23522;
  goto L11476;

 L23522: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L23523;
  goto L11476;

 L23523: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L23524;
  goto L11476;

 L23524: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L23525;
  goto L11476;

 L23525: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L23526;
  goto L11476;

 L23526: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (55)])
    goto L23527;
  goto L11476;

 L23527: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L23528;
  goto L11476;

 L23528: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L23529;
  goto L11476;

 L23529: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L23530;
  goto L11476;

 L23530: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (59)])
    goto L23531;
  goto L11476;

 L23531: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L23532;
  goto L11476;

 L23532: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L23533;
  goto L11476;

 L23533: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L23534;
  goto L11476;

 L23534: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (63)]
      && 
#line 7265 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2313;  /* vec_extract_hi_v64qi */
    }
  goto L11476;

 L25892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L25893;
    }
  goto L11476;

 L25893: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8582 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2545;  /* *avx512bw_ss_truncatev32hiv32qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11476;

 L25897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L25898;
    }
  goto L11476;

 L25898: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8582 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2546;  /* *avx512bw_truncatev32hiv32qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11476;

 L25902: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L25903;
    }
  goto L11476;

 L25903: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8582 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2547;  /* *avx512bw_us_truncatev32hiv32qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11476;

 L25907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58314;
  goto L11476;

 L58314: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L25908;
    case TRUNCATE:
      goto L25916;
    case US_TRUNCATE:
      goto L25924;
    default:
     break;
   }
  goto L11476;

 L25908: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L25909;
    }
  goto L11476;

 L25909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L25910;
    }
  goto L11476;

 L25910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25911;
    }
  goto L11476;

 L25911: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2548;  /* avx512bw_ss_truncatev32hiv32qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11476;

 L25916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L25917;
    }
  goto L11476;

 L25917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L25918;
    }
  goto L11476;

 L25918: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25919;
    }
  goto L11476;

 L25919: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2549;  /* avx512bw_truncatev32hiv32qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11476;

 L25924: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L25925;
    }
  goto L11476;

 L25925: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L25926;
    }
  goto L11476;

 L25926: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25927;
    }
  goto L11476;

 L25927: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2550;  /* avx512bw_us_truncatev32hiv32qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11476;

 L11477: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V32QImode)
       || register_operand (operands[1], V32QImode))) && 
#line 165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 998;  /* *movv32qi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57085;

 L11654: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32QImode)
    goto L58317;
  x1 = XEXP (x0, 0);
  goto L57103;

 L58317: ATTRIBUTE_UNUSED_LABEL
  tem = recog_22 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57103;

 L11906: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32QImode)
    goto L58448;
  goto ret0;

 L58448: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11907;
    case UNSPEC:
      goto L58450;
    default:
     break;
   }
  goto ret0;

 L11907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58452;
  goto ret0;

 L58452: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12393;
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L11908;
    }
  goto ret0;

 L12393: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L12394;
    }
  goto ret0;

 L12394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12395;
  goto ret0;

 L12395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L12396;
    }
  goto ret0;

 L12396: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1465 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1142;  /* avx512vl_storedquv32qi_mask */
    }
  goto ret0;

 L11908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11909;
  goto ret0;

 L11909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11910;
    }
  goto ret0;

 L11910: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1037 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1068;  /* avx512vl_storev32qi_mask */
    }
  goto ret0;

 L58450: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12268;
  goto ret0;

 L12268: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L12269;
    }
  goto ret0;

 L12269: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 291 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1122;  /* avx_storedquv32qi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_24 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L58557;
    case PLUS:
      goto L28284;
    case MINUS:
      goto L28299;
    case SS_PLUS:
      goto L28920;
    case US_PLUS:
      goto L28935;
    case SS_MINUS:
      goto L28950;
    case US_MINUS:
      goto L28965;
    case SMAX:
      goto L31159;
    case SMIN:
      goto L31174;
    case UMAX:
      goto L31189;
    case UMIN:
      goto L31204;
    case AND:
      goto L32104;
    case IOR:
      goto L32554;
    case XOR:
      goto L32569;
    case VEC_CONCAT:
      goto L33275;
    case VEC_SELECT:
      goto L33651;
    case VEC_DUPLICATE:
      goto L34508;
    case TRUNCATE:
      goto L35619;
    case ABS:
      goto L37930;
    case REG:
    case SUBREG:
    case MEM:
      goto L58529;
    default:
      goto L58530;
   }
 L58529: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L11649;
    }
 L58530: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L11775;
    }
  goto ret0;

 L58557: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L58565;
    case 2:
      goto L58566;
    case 3:
      goto L58567;
    default:
      break;
    }
  goto ret0;

 L58565: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 104)
    goto L12131;
  goto ret0;

 L12131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L12132;
    }
  goto ret0;

 L12132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L12133;
    }
  goto ret0;

 L12133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L12134;
    }
  goto ret0;

 L12134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 1101;  /* *sse2_loaddquv16qi_mask */
    }
  goto ret0;

 L58566: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 107LL:
      goto L37687;
    case 143LL:
      goto L41282;
    case 193LL:
      goto L51670;
    default:
      break;
    }
  goto ret0;

 L37687: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L37688;
    }
  goto ret0;

 L37688: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L37689;
    }
  goto ret0;

 L37689: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L37690;
    }
  goto ret0;

 L37690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L37691;
    }
  goto ret0;

 L37691: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 13725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 3522;  /* ssse3_pshufbv16qi3_mask */
    }
  goto ret0;

 L41282: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L41283;
    }
  goto ret0;

 L41283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L41284;
    }
  goto ret0;

 L41284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L41285;
    }
  goto ret0;

 L41285: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L41286;
    }
  goto ret0;

 L41286: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16530 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI && (16 == 64 || TARGET_AVX512VL)) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3902;  /* avx512vl_permvarv16qi_mask */
    }
  goto ret0;

 L51670: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L51671;
    }
  goto ret0;

 L51671: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L51672;
    }
  goto ret0;

 L51672: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L51673;
    }
  goto ret0;

 L51673: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L51674;
    }
  goto ret0;

 L51674: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18718 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4707;  /* vpmultishiftqbv16qi_mask */
    }
  goto ret0;

 L58567: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 109LL:
      goto L37776;
    case 147LL:
      goto L42891;
    case 149LL:
      goto L43099;
    case 148LL:
      goto L43377;
    default:
      break;
    }
  goto ret0;

 L37776: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L37777;
    }
  goto ret0;

 L37777: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L37778;
    }
  goto ret0;

 L37778: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_mul_8_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L37779;
    }
  goto ret0;

 L37779: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[4] = x2;
      goto L37780;
    }
  goto ret0;

 L37780: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L37781;
    }
  goto ret0;

 L37781: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13789 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)))
    {
      return 3535;  /* ssse3_palignrv16qi_mask */
    }
  goto ret0;

 L42891: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L42892;
    }
  goto ret0;

 L42892: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L42893;
    }
  goto ret0;

 L42893: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L42894;
    }
  goto ret0;

 L42894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16QImode))
    {
      operands[4] = x2;
      goto L42895;
    }
  goto ret0;

 L42895: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L42896;
    }
  goto ret0;

 L42896: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4114;  /* avx512vl_vpermi2varv16qi3_maskz_1 */
    }
  goto ret0;

 L43099: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L43100;
    }
  goto ret0;

 L43100: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L43101;
    }
  goto ret0;

 L43101: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L43102;
    }
  goto ret0;

 L43102: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43103;
  goto ret0;

 L43103: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L43104;
    }
  goto ret0;

 L43104: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4136;  /* avx512vl_vpermi2varv16qi3_mask */
    }
  goto ret0;

 L43377: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L43378;
    }
  goto ret0;

 L43378: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L43379;
    }
  goto ret0;

 L43379: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L43380;
    }
  goto ret0;

 L43380: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16QImode))
    {
      operands[4] = x2;
      goto L43381;
    }
 L43588: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43589;
  goto ret0;

 L43381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L43382;
    }
  x2 = XEXP (x1, 1);
  goto L43588;

 L43382: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17294 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4168;  /* avx512vl_vpermt2varv16qi3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43588;

 L43589: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L43590;
    }
  goto ret0;

 L43590: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17339 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4190;  /* avx512vl_vpermt2varv16qi3_mask */
    }
  goto ret0;

 L28284: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L28285;
    }
  goto ret0;

 L28285: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L28286;
    }
  goto ret0;

 L28286: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L28287;
    }
  goto ret0;

 L28287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28288;
    }
  goto ret0;

 L28288: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V16QImode, operands))))
    {
      return 2698;  /* *addv16qi3 */
    }
 L28708: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V16QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2751;  /* *addv16qi3_mask */
    }
  goto ret0;

 L28299: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L28300;
    }
  goto ret0;

 L28300: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L28301;
    }
  goto ret0;

 L28301: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L28302;
    }
  goto ret0;

 L28302: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28303;
    }
  goto ret0;

 L28303: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V16QImode, operands))))
    {
      return 2700;  /* *subv16qi3 */
    }
 L28717: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (MINUS, V16QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2752;  /* *subv16qi3_mask */
    }
  goto ret0;

 L28920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L28921;
    }
  goto ret0;

 L28921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L28922;
    }
  goto ret0;

 L28922: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L28923;
    }
  goto ret0;

 L28923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28924;
    }
  goto ret0;

 L28924: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_PLUS, V16QImode, operands))))
    {
      return 2778;  /* *sse2_ssaddv16qi3_mask */
    }
  goto ret0;

 L28935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L28936;
    }
  goto ret0;

 L28936: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L28937;
    }
  goto ret0;

 L28937: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L28938;
    }
  goto ret0;

 L28938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28939;
    }
  goto ret0;

 L28939: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_PLUS, V16QImode, operands))))
    {
      return 2780;  /* *sse2_usaddv16qi3_mask */
    }
  goto ret0;

 L28950: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L28951;
    }
  goto ret0;

 L28951: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L28952;
    }
  goto ret0;

 L28952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L28953;
    }
  goto ret0;

 L28953: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28954;
    }
  goto ret0;

 L28954: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_MINUS, V16QImode, operands))))
    {
      return 2782;  /* *sse2_sssubv16qi3_mask */
    }
  goto ret0;

 L28965: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L28966;
    }
  goto ret0;

 L28966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L28967;
    }
  goto ret0;

 L28967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L28968;
    }
  goto ret0;

 L28968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28969;
    }
  goto ret0;

 L28969: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_MINUS, V16QImode, operands))))
    {
      return 2784;  /* *sse2_ussubv16qi3_mask */
    }
  goto ret0;

 L31159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16QImode)
    goto L58573;
  goto ret0;

 L58573: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31160;
    }
 L58574: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31460;
    }
  goto ret0;

 L31160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31161;
    }
  x3 = XEXP (x2, 0);
  goto L58574;

 L31161: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L31162;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58574;

 L31162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31163;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58574;

 L31163: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3040;  /* smaxv16qi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58574;

 L31460: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31461;
    }
  goto ret0;

 L31461: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L31462;
    }
  goto ret0;

 L31462: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31463;
    }
  goto ret0;

 L31463: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (SMAX, V16QImode, operands))))
    {
      return 3080;  /* *sse4_1_smaxv16qi3_mask */
    }
  goto ret0;

 L31174: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16QImode)
    goto L58575;
  goto ret0;

 L58575: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31175;
    }
 L58576: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31475;
    }
  goto ret0;

 L31175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31176;
    }
  x3 = XEXP (x2, 0);
  goto L58576;

 L31176: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L31177;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58576;

 L31177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31178;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58576;

 L31178: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3042;  /* sminv16qi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58576;

 L31475: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31476;
    }
  goto ret0;

 L31476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L31477;
    }
  goto ret0;

 L31477: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31478;
    }
  goto ret0;

 L31478: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (SMIN, V16QImode, operands))))
    {
      return 3082;  /* *sse4_1_sminv16qi3_mask */
    }
  goto ret0;

 L31189: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31190;
    }
  goto ret0;

 L31190: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31191;
    }
  goto ret0;

 L31191: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L31192;
    }
  goto ret0;

 L31192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31193;
    }
  goto ret0;

 L31193: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3044;  /* umaxv16qi3_mask */
    }
  goto ret0;

 L31204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31205;
    }
  goto ret0;

 L31205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31206;
    }
  goto ret0;

 L31206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L31207;
    }
  goto ret0;

 L31207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31208;
    }
  goto ret0;

 L31208: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3046;  /* uminv16qi3_mask */
    }
  goto ret0;

 L32104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16QImode)
    goto L58577;
  goto ret0;

 L58577: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32105;
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L32540;
    }
  goto ret0;

 L32105: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L32106;
    }
  goto ret0;

 L32106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L32107;
    }
  goto ret0;

 L32107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L32108;
    }
  goto ret0;

 L32108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32109;
    }
  goto ret0;

 L32109: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 3172;  /* *andnotv16qi3 */
    }
 L32308: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10896 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3194;  /* *andnotv16qi3_mask */
    }
  goto ret0;

 L32540: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L32541;
    }
  goto ret0;

 L32541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L32542;
    }
  goto ret0;

 L32542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32543;
    }
  goto ret0;

 L32543: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V16QImode, operands))))
    {
      return 3224;  /* andv16qi3_mask */
    }
  goto ret0;

 L32554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L32555;
    }
  goto ret0;

 L32555: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L32556;
    }
  goto ret0;

 L32556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L32557;
    }
  goto ret0;

 L32557: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32558;
    }
  goto ret0;

 L32558: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V16QImode, operands))))
    {
      return 3226;  /* iorv16qi3_mask */
    }
  goto ret0;

 L32569: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L32570;
    }
  goto ret0;

 L32570: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L32571;
    }
  goto ret0;

 L32571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L32572;
    }
  goto ret0;

 L32572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32573;
    }
  goto ret0;

 L32573: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V16QImode, operands))))
    {
      return 3228;  /* xorv16qi3_mask */
    }
  goto ret0;

 L33275: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode)
    goto L58579;
  goto ret0;

 L58579: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L33276;
    case US_TRUNCATE:
      goto L33390;
    default:
     break;
   }
  goto ret0;

 L33276: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L33277;
    }
  goto ret0;

 L33277: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == SS_TRUNCATE)
    goto L33278;
  goto ret0;

 L33278: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L33279;
    }
  goto ret0;

 L33279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L33280;
    }
  goto ret0;

 L33280: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L33281;
    }
  goto ret0;

 L33281: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11080 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 3324;  /* sse2_packsswb_mask */
    }
  goto ret0;

 L33390: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L33391;
    }
  goto ret0;

 L33391: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == US_TRUNCATE)
    goto L33392;
  goto ret0;

 L33392: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L33393;
    }
  goto ret0;

 L33393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L33394;
    }
  goto ret0;

 L33394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L33395;
    }
  goto ret0;

 L33395: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 3336;  /* sse2_packuswb_mask */
    }
  goto ret0;

 L33651: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32QImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L33652;
  goto ret0;

 L33652: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L33653;
    }
  goto ret0;

 L33653: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L33654;
    }
  goto ret0;

 L33654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L33655;
  goto ret0;

 L33655: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58581;
  goto ret0;

 L58581: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 8LL:
        goto L33656;
      case 0LL:
        goto L33934;
      default:
        break;
      }
  goto ret0;

 L33656: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L33657;
  goto ret0;

 L33657: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L33658;
  goto ret0;

 L33658: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L33659;
  goto ret0;

 L33659: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L33660;
  goto ret0;

 L33660: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L33661;
  goto ret0;

 L33661: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L33662;
  goto ret0;

 L33662: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L33663;
  goto ret0;

 L33663: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33664;
  goto ret0;

 L33664: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33665;
  goto ret0;

 L33665: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33666;
  goto ret0;

 L33666: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33667;
  goto ret0;

 L33667: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33668;
  goto ret0;

 L33668: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33669;
  goto ret0;

 L33669: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33670;
  goto ret0;

 L33670: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L33671;
  goto ret0;

 L33671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L33672;
    }
  goto ret0;

 L33672: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L33673;
    }
  goto ret0;

 L33673: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 3342;  /* vec_interleave_highv16qi_mask */
    }
  goto ret0;

 L33934: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L33935;
  goto ret0;

 L33935: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L33936;
  goto ret0;

 L33936: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L33937;
  goto ret0;

 L33937: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L33938;
  goto ret0;

 L33938: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L33939;
  goto ret0;

 L33939: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L33940;
  goto ret0;

 L33940: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L33941;
  goto ret0;

 L33941: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L33942;
  goto ret0;

 L33942: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33943;
  goto ret0;

 L33943: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33944;
  goto ret0;

 L33944: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33945;
  goto ret0;

 L33945: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33946;
  goto ret0;

 L33946: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33947;
  goto ret0;

 L33947: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33948;
  goto ret0;

 L33948: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L33949;
  goto ret0;

 L33949: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L33950;
    }
  goto ret0;

 L33950: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L33951;
    }
  goto ret0;

 L33951: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 3348;  /* vec_interleave_lowv16qi_mask */
    }
  goto ret0;

 L34508: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode)
    goto L58584;
  goto ret0;

 L58584: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41727;
  if (nonimmediate_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L34509;
    }
 L58585: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L41880;
    }
  goto ret0;

 L41727: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L41728;
    }
  goto ret0;

 L41728: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41729;
  goto ret0;

 L41729: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41730;
  goto ret0;

 L41730: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L41731;
    }
  goto ret0;

 L41731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41732;
    }
  goto ret0;

 L41732: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3952;  /* avx512vl_vec_dupv16qi_mask */
    }
  goto ret0;

 L34509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L34510;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58585;

 L34510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34511;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58585;

 L34511: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ((unsigned) exact_log2 (INTVAL (operands[3]))
       < GET_MODE_NUNITS (V16QImode))) && 
#line 11599 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1)))
    {
      return 3373;  /* sse4_1_pinsrb */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58585;

 L41880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L41881;
    }
  goto ret0;

 L41881: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41882;
    }
  goto ret0;

 L41882: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3972;  /* avx512vl_vec_dup_gprv16qi_mask */
    }
  goto ret0;

 L35619: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L35620;
  goto ret0;

 L35620: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16HImode
      && GET_CODE (x4) == PLUS)
    goto L35621;
  goto ret0;

 L35621: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16HImode
      && GET_CODE (x5) == PLUS)
    goto L35622;
  goto ret0;

 L35622: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V16HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35623;
  goto ret0;

 L35623: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16QImode))
    {
      operands[1] = x7;
      goto L35624;
    }
  goto ret0;

 L35624: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V16HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35625;
  goto ret0;

 L35625: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16QImode))
    {
      operands[2] = x7;
      goto L35626;
    }
  goto ret0;

 L35626: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V16QImode))
    {
      operands[5] = x5;
      goto L35627;
    }
  goto ret0;

 L35627: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35628;
  goto ret0;

 L35628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L35629;
    }
  goto ret0;

 L35629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L35630;
    }
  goto ret0;

 L35630: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (PLUS, V16QImode, operands))))
    {
      return 3457;  /* *sse2_uavgv16qi3_mask */
    }
  goto ret0;

 L37930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L37931;
    }
  goto ret0;

 L37931: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L37932;
    }
  goto ret0;

 L37932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L37933;
    }
  goto ret0;

 L37933: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3559;  /* absv16qi2_mask */
    }
  goto ret0;

 L11649: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L11650;
    }
  x2 = XEXP (x1, 0);
  goto L58530;

 L11650: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11651;
    }
  x2 = XEXP (x1, 0);
  goto L58530;

 L11651: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1031;  /* avx512vl_loadv16qi_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58530;

 L11775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L11776;
    }
  goto ret0;

 L11776: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11777;
    }
  goto ret0;

 L11777: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1049;  /* avx512vl_blendmv16qi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_25 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L26509;
    case TRUNCATE:
      goto L26536;
    case US_TRUNCATE:
      goto L26563;
    default:
     break;
   }
  goto ret0;

 L26509: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L58620;
    case V4DImode:
      goto L58621;
    default:
      break;
    }
  goto ret0;

 L58620: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L26510;
    }
  goto ret0;

 L26510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26511;
  goto ret0;

 L26511: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26512;
    }
  goto ret0;

 L26512: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26513;
  goto ret0;

 L26513: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26514;
  goto ret0;

 L26514: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26515;
  goto ret0;

 L26515: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26516;
  goto ret0;

 L26516: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26517;
  goto ret0;

 L26517: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26518;
    }
  goto ret0;

 L26518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 12)
    goto L26519;
  goto ret0;

 L26519: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26520;
  goto ret0;

 L26520: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26521;
  goto ret0;

 L26521: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26522;
  goto ret0;

 L26522: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26523;
  goto ret0;

 L26523: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26524;
  goto ret0;

 L26524: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26525;
  goto ret0;

 L26525: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26526;
  goto ret0;

 L26526: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26527;
  goto ret0;

 L26527: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26528;
  goto ret0;

 L26528: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26529;
  goto ret0;

 L26529: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26530;
  goto ret0;

 L26530: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2599;  /* avx512vl_ss_truncatev4siv4qi2_mask */
    }
  goto ret0;

 L58621: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L26591;
    }
  goto ret0;

 L26591: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26592;
  goto ret0;

 L26592: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26593;
    }
  goto ret0;

 L26593: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26594;
  goto ret0;

 L26594: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26595;
  goto ret0;

 L26595: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26596;
  goto ret0;

 L26596: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26597;
  goto ret0;

 L26597: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26598;
  goto ret0;

 L26598: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26599;
    }
  goto ret0;

 L26599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 12)
    goto L26600;
  goto ret0;

 L26600: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26601;
  goto ret0;

 L26601: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26602;
  goto ret0;

 L26602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26603;
  goto ret0;

 L26603: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26604;
  goto ret0;

 L26604: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26605;
  goto ret0;

 L26605: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26606;
  goto ret0;

 L26606: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26607;
  goto ret0;

 L26607: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26608;
  goto ret0;

 L26608: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26609;
  goto ret0;

 L26609: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26610;
  goto ret0;

 L26610: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26611;
  goto ret0;

 L26611: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2602;  /* avx512vl_ss_truncatev4div4qi2_mask */
    }
  goto ret0;

 L26536: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L58622;
    case V4DImode:
      goto L58623;
    default:
      break;
    }
  goto ret0;

 L58622: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L26537;
    }
  goto ret0;

 L26537: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26538;
  goto ret0;

 L26538: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26539;
    }
  goto ret0;

 L26539: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26540;
  goto ret0;

 L26540: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26541;
  goto ret0;

 L26541: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26542;
  goto ret0;

 L26542: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26543;
  goto ret0;

 L26543: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26544;
  goto ret0;

 L26544: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26545;
    }
  goto ret0;

 L26545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 12)
    goto L26546;
  goto ret0;

 L26546: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26547;
  goto ret0;

 L26547: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26548;
  goto ret0;

 L26548: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26549;
  goto ret0;

 L26549: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26550;
  goto ret0;

 L26550: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26551;
  goto ret0;

 L26551: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26552;
  goto ret0;

 L26552: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26553;
  goto ret0;

 L26553: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26554;
  goto ret0;

 L26554: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26555;
  goto ret0;

 L26555: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26556;
  goto ret0;

 L26556: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26557;
  goto ret0;

 L26557: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2600;  /* avx512vl_truncatev4siv4qi2_mask */
    }
  goto ret0;

 L58623: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L26618;
    }
  goto ret0;

 L26618: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26619;
  goto ret0;

 L26619: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26620;
    }
  goto ret0;

 L26620: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26621;
  goto ret0;

 L26621: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26622;
  goto ret0;

 L26622: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26623;
  goto ret0;

 L26623: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26624;
  goto ret0;

 L26624: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26625;
  goto ret0;

 L26625: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26626;
    }
  goto ret0;

 L26626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 12)
    goto L26627;
  goto ret0;

 L26627: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26628;
  goto ret0;

 L26628: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26629;
  goto ret0;

 L26629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26630;
  goto ret0;

 L26630: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26631;
  goto ret0;

 L26631: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26632;
  goto ret0;

 L26632: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26633;
  goto ret0;

 L26633: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26634;
  goto ret0;

 L26634: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26635;
  goto ret0;

 L26635: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26636;
  goto ret0;

 L26636: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26637;
  goto ret0;

 L26637: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26638;
  goto ret0;

 L26638: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2603;  /* avx512vl_truncatev4div4qi2_mask */
    }
  goto ret0;

 L26563: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L58624;
    case V4DImode:
      goto L58625;
    default:
      break;
    }
  goto ret0;

 L58624: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L26564;
    }
  goto ret0;

 L26564: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26565;
  goto ret0;

 L26565: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26566;
    }
  goto ret0;

 L26566: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26567;
  goto ret0;

 L26567: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26568;
  goto ret0;

 L26568: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26569;
  goto ret0;

 L26569: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26570;
  goto ret0;

 L26570: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26571;
  goto ret0;

 L26571: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26572;
    }
  goto ret0;

 L26572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 12)
    goto L26573;
  goto ret0;

 L26573: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26574;
  goto ret0;

 L26574: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26575;
  goto ret0;

 L26575: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26576;
  goto ret0;

 L26576: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26577;
  goto ret0;

 L26577: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26578;
  goto ret0;

 L26578: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26579;
  goto ret0;

 L26579: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26580;
  goto ret0;

 L26580: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26581;
  goto ret0;

 L26581: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26582;
  goto ret0;

 L26582: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26583;
  goto ret0;

 L26583: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26584;
  goto ret0;

 L26584: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2601;  /* avx512vl_us_truncatev4siv4qi2_mask */
    }
  goto ret0;

 L58625: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L26645;
    }
  goto ret0;

 L26645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26646;
  goto ret0;

 L26646: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26647;
    }
  goto ret0;

 L26647: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26648;
  goto ret0;

 L26648: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26649;
  goto ret0;

 L26649: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26650;
  goto ret0;

 L26650: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26651;
  goto ret0;

 L26651: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26652;
  goto ret0;

 L26652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26653;
    }
  goto ret0;

 L26653: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 12)
    goto L26654;
  goto ret0;

 L26654: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26655;
  goto ret0;

 L26655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26656;
  goto ret0;

 L26656: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26657;
  goto ret0;

 L26657: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26658;
  goto ret0;

 L26658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26659;
  goto ret0;

 L26659: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26660;
  goto ret0;

 L26660: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26661;
  goto ret0;

 L26661: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26662;
  goto ret0;

 L26662: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26663;
  goto ret0;

 L26663: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26664;
  goto ret0;

 L26664: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26665;
  goto ret0;

 L26665: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2604;  /* avx512vl_us_truncatev4div4qi2_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_26 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L26941;
    case TRUNCATE:
      goto L26968;
    case US_TRUNCATE:
      goto L26995;
    default:
     break;
   }
  goto ret0;

 L26941: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8HImode:
      goto L58641;
    case V8SImode:
      goto L58642;
    case V8DImode:
      goto L58643;
    default:
      break;
    }
  goto ret0;

 L58641: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L26942;
    }
  goto ret0;

 L26942: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26943;
  goto ret0;

 L26943: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26944;
    }
  goto ret0;

 L26944: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L26945;
  goto ret0;

 L26945: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26946;
  goto ret0;

 L26946: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26947;
  goto ret0;

 L26947: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26948;
  goto ret0;

 L26948: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26949;
  goto ret0;

 L26949: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26950;
  goto ret0;

 L26950: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26951;
  goto ret0;

 L26951: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26952;
  goto ret0;

 L26952: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26953;
  goto ret0;

 L26953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26954;
    }
  goto ret0;

 L26954: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L26955;
  goto ret0;

 L26955: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26956;
  goto ret0;

 L26956: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26957;
  goto ret0;

 L26957: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26958;
  goto ret0;

 L26958: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26959;
  goto ret0;

 L26959: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26960;
  goto ret0;

 L26960: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26961;
  goto ret0;

 L26961: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26962;
  goto ret0;

 L26962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 8848 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2617;  /* avx512vl_ss_truncatev8hiv8qi2_mask */
    }
  goto ret0;

 L58642: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L27023;
    }
  goto ret0;

 L27023: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27024;
  goto ret0;

 L27024: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L27025;
    }
  goto ret0;

 L27025: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27026;
  goto ret0;

 L27026: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27027;
  goto ret0;

 L27027: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27028;
  goto ret0;

 L27028: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27029;
  goto ret0;

 L27029: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27030;
  goto ret0;

 L27030: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27031;
  goto ret0;

 L27031: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27032;
  goto ret0;

 L27032: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27033;
  goto ret0;

 L27033: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27034;
  goto ret0;

 L27034: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27035;
    }
  goto ret0;

 L27035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27036;
  goto ret0;

 L27036: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27037;
  goto ret0;

 L27037: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27038;
  goto ret0;

 L27038: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27039;
  goto ret0;

 L27039: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27040;
  goto ret0;

 L27040: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27041;
  goto ret0;

 L27041: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27042;
  goto ret0;

 L27042: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27043;
  goto ret0;

 L27043: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8848 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2620;  /* avx512vl_ss_truncatev8siv8qi2_mask */
    }
  goto ret0;

 L58643: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L28052;
    }
  goto ret0;

 L28052: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L28053;
  goto ret0;

 L28053: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L28054;
    }
  goto ret0;

 L28054: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L28055;
  goto ret0;

 L28055: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28056;
  goto ret0;

 L28056: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L28057;
  goto ret0;

 L28057: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L28058;
  goto ret0;

 L28058: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L28059;
  goto ret0;

 L28059: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L28060;
  goto ret0;

 L28060: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L28061;
  goto ret0;

 L28061: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L28062;
  goto ret0;

 L28062: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L28063;
  goto ret0;

 L28063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L28064;
    }
  goto ret0;

 L28064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L28065;
  goto ret0;

 L28065: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28066;
  goto ret0;

 L28066: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28067;
  goto ret0;

 L28067: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28068;
  goto ret0;

 L28068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28069;
  goto ret0;

 L28069: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28070;
  goto ret0;

 L28070: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28071;
  goto ret0;

 L28071: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28072;
  goto ret0;

 L28072: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9129 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2683;  /* avx512f_ss_truncatev8div16qi2_mask */
    }
  goto ret0;

 L26968: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8HImode:
      goto L58644;
    case V8SImode:
      goto L58645;
    case V8DImode:
      goto L58646;
    default:
      break;
    }
  goto ret0;

 L58644: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L26969;
    }
  goto ret0;

 L26969: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26970;
  goto ret0;

 L26970: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26971;
    }
  goto ret0;

 L26971: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L26972;
  goto ret0;

 L26972: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26973;
  goto ret0;

 L26973: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26974;
  goto ret0;

 L26974: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26975;
  goto ret0;

 L26975: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26976;
  goto ret0;

 L26976: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26977;
  goto ret0;

 L26977: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26978;
  goto ret0;

 L26978: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26979;
  goto ret0;

 L26979: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26980;
  goto ret0;

 L26980: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26981;
    }
  goto ret0;

 L26981: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L26982;
  goto ret0;

 L26982: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26983;
  goto ret0;

 L26983: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26984;
  goto ret0;

 L26984: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26985;
  goto ret0;

 L26985: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26986;
  goto ret0;

 L26986: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26987;
  goto ret0;

 L26987: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26988;
  goto ret0;

 L26988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26989;
  goto ret0;

 L26989: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 8848 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2618;  /* avx512vl_truncatev8hiv8qi2_mask */
    }
  goto ret0;

 L58645: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L27050;
    }
  goto ret0;

 L27050: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27051;
  goto ret0;

 L27051: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L27052;
    }
  goto ret0;

 L27052: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27053;
  goto ret0;

 L27053: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27054;
  goto ret0;

 L27054: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27055;
  goto ret0;

 L27055: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27056;
  goto ret0;

 L27056: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27057;
  goto ret0;

 L27057: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27058;
  goto ret0;

 L27058: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27059;
  goto ret0;

 L27059: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27060;
  goto ret0;

 L27060: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27061;
  goto ret0;

 L27061: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27062;
    }
  goto ret0;

 L27062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27063;
  goto ret0;

 L27063: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27064;
  goto ret0;

 L27064: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27065;
  goto ret0;

 L27065: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27066;
  goto ret0;

 L27066: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27067;
  goto ret0;

 L27067: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27068;
  goto ret0;

 L27068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27069;
  goto ret0;

 L27069: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27070;
  goto ret0;

 L27070: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8848 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2621;  /* avx512vl_truncatev8siv8qi2_mask */
    }
  goto ret0;

 L58646: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L28079;
    }
  goto ret0;

 L28079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L28080;
  goto ret0;

 L28080: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L28081;
    }
  goto ret0;

 L28081: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L28082;
  goto ret0;

 L28082: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28083;
  goto ret0;

 L28083: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L28084;
  goto ret0;

 L28084: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L28085;
  goto ret0;

 L28085: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L28086;
  goto ret0;

 L28086: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L28087;
  goto ret0;

 L28087: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L28088;
  goto ret0;

 L28088: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L28089;
  goto ret0;

 L28089: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L28090;
  goto ret0;

 L28090: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L28091;
    }
  goto ret0;

 L28091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L28092;
  goto ret0;

 L28092: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28093;
  goto ret0;

 L28093: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28094;
  goto ret0;

 L28094: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28095;
  goto ret0;

 L28095: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28096;
  goto ret0;

 L28096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28097;
  goto ret0;

 L28097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28098;
  goto ret0;

 L28098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28099;
  goto ret0;

 L28099: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9129 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2684;  /* avx512f_truncatev8div16qi2_mask */
    }
  goto ret0;

 L26995: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8HImode:
      goto L58647;
    case V8SImode:
      goto L58648;
    case V8DImode:
      goto L58649;
    default:
      break;
    }
  goto ret0;

 L58647: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L26996;
    }
  goto ret0;

 L26996: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26997;
  goto ret0;

 L26997: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26998;
    }
  goto ret0;

 L26998: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L26999;
  goto ret0;

 L26999: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27000;
  goto ret0;

 L27000: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27001;
  goto ret0;

 L27001: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27002;
  goto ret0;

 L27002: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27003;
  goto ret0;

 L27003: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27004;
  goto ret0;

 L27004: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27005;
  goto ret0;

 L27005: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27006;
  goto ret0;

 L27006: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27007;
  goto ret0;

 L27007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27008;
    }
  goto ret0;

 L27008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27009;
  goto ret0;

 L27009: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27010;
  goto ret0;

 L27010: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27011;
  goto ret0;

 L27011: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27012;
  goto ret0;

 L27012: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27013;
  goto ret0;

 L27013: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27014;
  goto ret0;

 L27014: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27015;
  goto ret0;

 L27015: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27016;
  goto ret0;

 L27016: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 8848 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2619;  /* avx512vl_us_truncatev8hiv8qi2_mask */
    }
  goto ret0;

 L58648: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L27077;
    }
  goto ret0;

 L27077: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27078;
  goto ret0;

 L27078: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L27079;
    }
  goto ret0;

 L27079: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27080;
  goto ret0;

 L27080: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27081;
  goto ret0;

 L27081: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27082;
  goto ret0;

 L27082: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27083;
  goto ret0;

 L27083: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27084;
  goto ret0;

 L27084: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27085;
  goto ret0;

 L27085: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27086;
  goto ret0;

 L27086: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27087;
  goto ret0;

 L27087: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27088;
  goto ret0;

 L27088: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27089;
    }
  goto ret0;

 L27089: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27090;
  goto ret0;

 L27090: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27091;
  goto ret0;

 L27091: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27092;
  goto ret0;

 L27092: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27093;
  goto ret0;

 L27093: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27094;
  goto ret0;

 L27094: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27095;
  goto ret0;

 L27095: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27096;
  goto ret0;

 L27096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27097;
  goto ret0;

 L27097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8848 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2622;  /* avx512vl_us_truncatev8siv8qi2_mask */
    }
  goto ret0;

 L58649: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L28106;
    }
  goto ret0;

 L28106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L28107;
  goto ret0;

 L28107: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L28108;
    }
  goto ret0;

 L28108: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L28109;
  goto ret0;

 L28109: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28110;
  goto ret0;

 L28110: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L28111;
  goto ret0;

 L28111: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L28112;
  goto ret0;

 L28112: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L28113;
  goto ret0;

 L28113: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L28114;
  goto ret0;

 L28114: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L28115;
  goto ret0;

 L28115: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L28116;
  goto ret0;

 L28116: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L28117;
  goto ret0;

 L28117: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L28118;
    }
  goto ret0;

 L28118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L28119;
  goto ret0;

 L28119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28120;
  goto ret0;

 L28120: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28121;
  goto ret0;

 L28121: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28122;
  goto ret0;

 L28122: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28123;
  goto ret0;

 L28123: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28124;
  goto ret0;

 L28124: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28125;
  goto ret0;

 L28125: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28126;
  goto ret0;

 L28126: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9129 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2685;  /* avx512f_us_truncatev8div16qi2_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_27 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4QImode:
      goto L58599;
    case V2QImode:
      goto L58602;
    case V8QImode:
      goto L58605;
    default:
      break;
    }
  goto ret0;

 L58599: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L26049;
    case TRUNCATE:
      goto L26056;
    case US_TRUNCATE:
      goto L26063;
    case VEC_MERGE:
      goto L26508;
    default:
     break;
   }
  goto ret0;

 L26049: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L58611;
    case V4SImode:
      goto L58612;
    default:
      break;
    }
  goto ret0;

 L58611: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L26050;
    }
  goto ret0;

 L26050: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V12QImode))
    {
      operands[2] = x2;
      goto L26051;
    }
  goto ret0;

 L26051: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2569;  /* *avx512vl_ss_truncatev4div4qi2 */
    }
  goto ret0;

 L58612: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L26113;
    }
  goto ret0;

 L26113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V12QImode))
    {
      operands[2] = x2;
      goto L26114;
    }
  goto ret0;

 L26114: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2578;  /* *avx512vl_ss_truncatev4siv4qi2 */
    }
  goto ret0;

 L26056: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L58613;
    case V4SImode:
      goto L58614;
    default:
      break;
    }
  goto ret0;

 L58613: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L26057;
    }
  goto ret0;

 L26057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V12QImode))
    {
      operands[2] = x2;
      goto L26058;
    }
  goto ret0;

 L26058: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2570;  /* *avx512vl_truncatev4div4qi2 */
    }
  goto ret0;

 L58614: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L26120;
    }
  goto ret0;

 L26120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V12QImode))
    {
      operands[2] = x2;
      goto L26121;
    }
  goto ret0;

 L26121: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2579;  /* *avx512vl_truncatev4siv4qi2 */
    }
  goto ret0;

 L26063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L58615;
    case V4SImode:
      goto L58616;
    default:
      break;
    }
  goto ret0;

 L58615: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L26064;
    }
  goto ret0;

 L26064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V12QImode))
    {
      operands[2] = x2;
      goto L26065;
    }
  goto ret0;

 L26065: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2571;  /* *avx512vl_us_truncatev4div4qi2 */
    }
  goto ret0;

 L58616: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L26127;
    }
  goto ret0;

 L26127: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V12QImode))
    {
      operands[2] = x2;
      goto L26128;
    }
  goto ret0;

 L26128: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2580;  /* *avx512vl_us_truncatev4siv4qi2 */
    }
  goto ret0;

 L26508: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4QImode)
    goto L58617;
  goto ret0;

 L58617: ATTRIBUTE_UNUSED_LABEL
  return recog_25 (x0, insn, pnum_clobbers);

 L58602: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L26070;
    case TRUNCATE:
      goto L26077;
    case US_TRUNCATE:
      goto L26084;
    case VEC_MERGE:
      goto L26220;
    default:
     break;
   }
  goto ret0;

 L26070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L26071;
    }
  goto ret0;

 L26071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V14QImode))
    {
      operands[2] = x2;
      goto L26072;
    }
  goto ret0;

 L26072: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2572;  /* *avx512vl_ss_truncatev2div2qi2 */
    }
  goto ret0;

 L26077: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L26078;
    }
  goto ret0;

 L26078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V14QImode))
    {
      operands[2] = x2;
      goto L26079;
    }
  goto ret0;

 L26079: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2573;  /* *avx512vl_truncatev2div2qi2 */
    }
  goto ret0;

 L26084: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L26085;
    }
  goto ret0;

 L26085: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V14QImode))
    {
      operands[2] = x2;
      goto L26086;
    }
  goto ret0;

 L26086: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2574;  /* *avx512vl_us_truncatev2div2qi2 */
    }
  goto ret0;

 L26220: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2QImode)
    goto L58626;
  goto ret0;

 L58626: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L26221;
    case TRUNCATE:
      goto L26248;
    case US_TRUNCATE:
      goto L26275;
    default:
     break;
   }
  goto ret0;

 L26221: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L26222;
    }
  goto ret0;

 L26222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26223;
  goto ret0;

 L26223: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26224;
    }
  goto ret0;

 L26224: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L26225;
  goto ret0;

 L26225: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26226;
  goto ret0;

 L26226: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26227;
  goto ret0;

 L26227: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26228;
    }
  goto ret0;

 L26228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 14)
    goto L26229;
  goto ret0;

 L26229: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26230;
  goto ret0;

 L26230: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26231;
  goto ret0;

 L26231: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26232;
  goto ret0;

 L26232: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26233;
  goto ret0;

 L26233: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26234;
  goto ret0;

 L26234: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26235;
  goto ret0;

 L26235: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26236;
  goto ret0;

 L26236: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26237;
  goto ret0;

 L26237: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26238;
  goto ret0;

 L26238: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26239;
  goto ret0;

 L26239: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26240;
  goto ret0;

 L26240: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26241;
  goto ret0;

 L26241: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26242;
  goto ret0;

 L26242: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8709 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2587;  /* avx512vl_ss_truncatev2div2qi2_mask */
    }
  goto ret0;

 L26248: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L26249;
    }
  goto ret0;

 L26249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26250;
  goto ret0;

 L26250: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26251;
    }
  goto ret0;

 L26251: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L26252;
  goto ret0;

 L26252: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26253;
  goto ret0;

 L26253: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26254;
  goto ret0;

 L26254: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26255;
    }
  goto ret0;

 L26255: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 14)
    goto L26256;
  goto ret0;

 L26256: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26257;
  goto ret0;

 L26257: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26258;
  goto ret0;

 L26258: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26259;
  goto ret0;

 L26259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26260;
  goto ret0;

 L26260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26261;
  goto ret0;

 L26261: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26262;
  goto ret0;

 L26262: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26263;
  goto ret0;

 L26263: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26264;
  goto ret0;

 L26264: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26265;
  goto ret0;

 L26265: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26266;
  goto ret0;

 L26266: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26267;
  goto ret0;

 L26267: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26268;
  goto ret0;

 L26268: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26269;
  goto ret0;

 L26269: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8709 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2588;  /* avx512vl_truncatev2div2qi2_mask */
    }
  goto ret0;

 L26275: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L26276;
    }
  goto ret0;

 L26276: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26277;
  goto ret0;

 L26277: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V16QImode))
    {
      operands[2] = x4;
      goto L26278;
    }
  goto ret0;

 L26278: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L26279;
  goto ret0;

 L26279: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26280;
  goto ret0;

 L26280: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26281;
  goto ret0;

 L26281: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L26282;
    }
  goto ret0;

 L26282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 14)
    goto L26283;
  goto ret0;

 L26283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26284;
  goto ret0;

 L26284: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26285;
  goto ret0;

 L26285: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26286;
  goto ret0;

 L26286: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26287;
  goto ret0;

 L26287: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26288;
  goto ret0;

 L26288: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26289;
  goto ret0;

 L26289: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26290;
  goto ret0;

 L26290: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26291;
  goto ret0;

 L26291: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26292;
  goto ret0;

 L26292: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26293;
  goto ret0;

 L26293: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26294;
  goto ret0;

 L26294: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26295;
  goto ret0;

 L26295: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26296;
  goto ret0;

 L26296: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8709 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2589;  /* avx512vl_us_truncatev2div2qi2_mask */
    }
  goto ret0;

 L58605: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L26091;
    case TRUNCATE:
      goto L26098;
    case US_TRUNCATE:
      goto L26105;
    case VEC_MERGE:
      goto L26940;
    default:
     break;
   }
  goto ret0;

 L26091: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L58629;
    case V8HImode:
      goto L58630;
    case V8DImode:
      goto L58631;
    default:
      break;
    }
  goto ret0;

 L58629: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26092;
    }
  goto ret0;

 L26092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L26093;
    }
  goto ret0;

 L26093: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2575;  /* *avx512vl_ss_truncatev8siv8qi2 */
    }
  goto ret0;

 L58630: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L33268;
    }
  goto ret0;

 L33268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L33269;
  if (const0_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L26135;
    }
  goto ret0;

 L33269: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L33270;
    }
  goto ret0;

 L33270: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11080 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3323;  /* sse2_packsswb */
    }
  goto ret0;

 L26135: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8651 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2581;  /* *avx512vl_ss_truncatev8hiv8qi2 */
    }
  goto ret0;

 L58631: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L27961;
    }
  goto ret0;

 L27961: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27962;
  goto ret0;

 L27962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27963;
  goto ret0;

 L27963: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27964;
  goto ret0;

 L27964: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27965;
  goto ret0;

 L27965: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27966;
  goto ret0;

 L27966: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27967;
  goto ret0;

 L27967: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27968;
  goto ret0;

 L27968: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27969;
  goto ret0;

 L27969: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9088 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2677;  /* *avx512f_ss_truncatev8div16qi2 */
    }
  goto ret0;

 L26098: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L58632;
    case V8HImode:
      goto L58633;
    case V8DImode:
      goto L58634;
    default:
      break;
    }
  goto ret0;

 L58632: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26099;
    }
  goto ret0;

 L26099: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L26100;
    }
  goto ret0;

 L26100: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2576;  /* *avx512vl_truncatev8siv8qi2 */
    }
  goto ret0;

 L58633: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L26141;
    }
  goto ret0;

 L26141: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L26142;
    }
  goto ret0;

 L26142: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8651 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2582;  /* *avx512vl_truncatev8hiv8qi2 */
    }
  goto ret0;

 L58634: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L27975;
    }
  goto ret0;

 L27975: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27976;
  goto ret0;

 L27976: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27977;
  goto ret0;

 L27977: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27978;
  goto ret0;

 L27978: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27979;
  goto ret0;

 L27979: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27980;
  goto ret0;

 L27980: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27981;
  goto ret0;

 L27981: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27982;
  goto ret0;

 L27982: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27983;
  goto ret0;

 L27983: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9088 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2678;  /* *avx512f_truncatev8div16qi2 */
    }
  goto ret0;

 L26105: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L58635;
    case V8HImode:
      goto L58636;
    case V8DImode:
      goto L58637;
    default:
      break;
    }
  goto ret0;

 L58635: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26106;
    }
  goto ret0;

 L26106: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L26107;
    }
  goto ret0;

 L26107: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2577;  /* *avx512vl_us_truncatev8siv8qi2 */
    }
  goto ret0;

 L58636: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L33382;
    }
  goto ret0;

 L33382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L33383;
  if (const0_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L26149;
    }
  goto ret0;

 L33383: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L33384;
    }
  goto ret0;

 L33384: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3335;  /* sse2_packuswb */
    }
  goto ret0;

 L26149: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8665 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8651 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2583;  /* *avx512vl_us_truncatev8hiv8qi2 */
    }
  goto ret0;

 L58637: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L27989;
    }
  goto ret0;

 L27989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 8)
    goto L27990;
  goto ret0;

 L27990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27991;
  goto ret0;

 L27991: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27992;
  goto ret0;

 L27992: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27993;
  goto ret0;

 L27993: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27994;
  goto ret0;

 L27994: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27995;
  goto ret0;

 L27995: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27996;
  goto ret0;

 L27996: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27997;
  goto ret0;

 L27997: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9088 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2679;  /* *avx512f_us_truncatev8div16qi2 */
    }
  goto ret0;

 L26940: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode)
    goto L58638;
  goto ret0;

 L58638: ATTRIBUTE_UNUSED_LABEL
  return recog_26 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_28 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11648;
    case UNSPEC:
      goto L58516;
    case VEC_CONCAT:
      goto L26048;
    case PLUS:
      goto L28277;
    case MINUS:
      goto L28292;
    case SS_PLUS:
      goto L28913;
    case US_PLUS:
      goto L28928;
    case SS_MINUS:
      goto L28943;
    case US_MINUS:
      goto L28958;
    case SMAX:
      goto L31152;
    case SMIN:
      goto L31167;
    case UMAX:
      goto L31182;
    case UMIN:
      goto L31197;
    case EQ:
      goto L31794;
    case GT:
      goto L32010;
    case AND:
      goto L32096;
    case IOR:
      goto L32547;
    case XOR:
      goto L32562;
    case VEC_SELECT:
      goto L33627;
    case TRUNCATE:
      goto L35606;
    case ABS:
      goto L37823;
    case IF_THEN_ELSE:
      goto L40023;
    case ROTATE:
      goto L40597;
    case ROTATERT:
      goto L40621;
    case VEC_DUPLICATE:
      goto L41056;
    default:
     break;
   }
 L58507: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_int_operator (x1, V16QImode))
    {
      operands[1] = x1;
      goto L40845;
    }
 L58508: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_uns_operator (x1, V16QImode))
    {
      operands[1] = x1;
      goto L40869;
    }
  goto ret0;

 L11648: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58531;
 L21984: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L21985;
    }
  goto ret0;

 L58531: ATTRIBUTE_UNUSED_LABEL
  tem = recog_24 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L21984;

 L21985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L21986;
    }
  goto ret0;

 L21986: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L21987;
    }
  goto ret0;

 L21987: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2190;  /* *avx512vl_cvtmask2bv16qi */
    }
  goto ret0;

 L58516: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L58586;
    case 2:
      goto L58588;
    case 3:
      goto L58590;
    default:
      break;
    }
  goto ret0;

 L58586: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12125;
    case 106LL:
      goto L12429;
    case 124LL:
      goto L40893;
    default:
      break;
    }
  goto ret0;

 L12125: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L12126;
    }
  goto ret0;

 L12126: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 1100;  /* *sse2_loaddquv16qi */
    }
  goto ret0;

 L12429: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L12430;
    }
  goto ret0;

 L12430: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1477 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1147;  /* sse3_lddqu */
    }
  goto ret0;

 L40893: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (ix86_comparison_uns_operator (x2, V16QImode))
    {
      operands[1] = x2;
      goto L40894;
    }
  goto ret0;

 L40894: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L40895;
    }
  goto ret0;

 L40895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L40896;
    }
  goto ret0;

 L40896: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16289 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3846;  /* xop_maskcmp_uns2v16qi3 */
    }
  goto ret0;

 L58588: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 107LL:
      goto L37680;
    case 108LL:
      goto L37707;
    case 143LL:
      goto L41275;
    case 193LL:
      goto L51663;
    default:
      break;
    }
  goto ret0;

 L37680: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L37681;
    }
  goto ret0;

 L37681: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L37682;
    }
  goto ret0;

 L37682: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && 1 && 1))
    {
      return 3521;  /* ssse3_pshufbv16qi3 */
    }
  goto ret0;

 L37707: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L37708;
    }
  goto ret0;

 L37708: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L37709;
    }
  goto ret0;

 L37709: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13755 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3525;  /* ssse3_psignv16qi3 */
    }
  goto ret0;

 L41275: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L41276;
    }
  goto ret0;

 L41276: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L41277;
    }
  goto ret0;

 L41277: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16530 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI && 1) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3901;  /* avx512vl_permvarv16qi */
    }
  goto ret0;

 L51663: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L51664;
    }
  goto ret0;

 L51664: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L51665;
    }
  goto ret0;

 L51665: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18718 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4706;  /* vpmultishiftqbv16qi */
    }
  goto ret0;

 L58590: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 118LL:
      goto L38141;
    case 114LL:
      goto L38212;
    case 126LL:
      goto L40557;
    case 125LL:
      goto L40921;
    case 147LL:
      goto L42883;
    case 148LL:
      goto L43369;
    default:
      break;
    }
  goto ret0;

 L38141: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L38142;
    }
  goto ret0;

 L38142: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L38143;
    }
  goto ret0;

 L38143: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38144;
    }
  goto ret0;

 L38144: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14092 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3591;  /* sse4_1_mpsadbw */
    }
  goto ret0;

 L38212: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L38213;
    }
  goto ret0;

 L38213: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L38214;
    }
  goto ret0;

 L38214: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L38215;
    }
  goto ret0;

 L38215: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3599;  /* sse4_1_pblendvb */
    }
  goto ret0;

 L40557: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L40558;
    }
  goto ret0;

 L40558: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L40559;
    }
  goto ret0;

 L40559: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40560;
    }
  goto ret0;

 L40560: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15773 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 3806;  /* xop_pperm */
    }
  goto ret0;

 L40921: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L40922;
    }
  goto ret0;

 L40922: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L40923;
    }
  goto ret0;

 L40923: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L40924;
    }
  goto ret0;

 L40924: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3850;  /* xop_pcom_tfv16qi3 */
    }
  goto ret0;

 L42883: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L42884;
    }
  goto ret0;

 L42884: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L42885;
    }
  goto ret0;

 L42885: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L42886;
    }
  goto ret0;

 L42886: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4113;  /* avx512vl_vpermi2varv16qi3 */
    }
  goto ret0;

 L43369: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L43370;
    }
  goto ret0;

 L43370: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L43371;
    }
  goto ret0;

 L43371: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L43372;
    }
  goto ret0;

 L43372: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17294 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VBMI) && 
#line 186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4167;  /* avx512vl_vpermt2varv16qi3 */
    }
  goto ret0;

 L26048: ATTRIBUTE_UNUSED_LABEL
  return recog_27 (x0, insn, pnum_clobbers);

 L28277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L28278;
    }
  goto ret0;

 L28278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L28279;
    }
  goto ret0;

 L28279: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V16QImode, operands)))
    {
      return 2697;  /* *addv16qi3 */
    }
  goto ret0;

 L28292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L28293;
    }
  goto ret0;

 L28293: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L28294;
    }
  goto ret0;

 L28294: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V16QImode, operands)))
    {
      return 2699;  /* *subv16qi3 */
    }
  goto ret0;

 L28913: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L28914;
    }
  goto ret0;

 L28914: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L28915;
    }
  goto ret0;

 L28915: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_PLUS, V16QImode, operands)))
    {
      return 2777;  /* *sse2_ssaddv16qi3 */
    }
  goto ret0;

 L28928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L28929;
    }
  goto ret0;

 L28929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L28930;
    }
  goto ret0;

 L28930: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_PLUS, V16QImode, operands)))
    {
      return 2779;  /* *sse2_usaddv16qi3 */
    }
  goto ret0;

 L28943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L28944;
    }
  goto ret0;

 L28944: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L28945;
    }
  goto ret0;

 L28945: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_MINUS, V16QImode, operands)))
    {
      return 2781;  /* *sse2_sssubv16qi3 */
    }
  goto ret0;

 L28958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L28959;
    }
  goto ret0;

 L28959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L28960;
    }
  goto ret0;

 L28960: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_MINUS, V16QImode, operands)))
    {
      return 2783;  /* *sse2_ussubv16qi3 */
    }
  goto ret0;

 L31152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58650;
  goto ret0;

 L58650: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31153;
    }
 L58651: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31453;
    }
  goto ret0;

 L31153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31154;
    }
  x2 = XEXP (x1, 0);
  goto L58651;

 L31154: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3039;  /* *smaxv16qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58651;

 L31453: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31454;
    }
  goto ret0;

 L31454: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (SMAX, V16QImode, operands)))
    {
      return 3079;  /* *sse4_1_smaxv16qi3 */
    }
  goto ret0;

 L31167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58652;
  goto ret0;

 L58652: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31168;
    }
 L58653: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31468;
    }
  goto ret0;

 L31168: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31169;
    }
  x2 = XEXP (x1, 0);
  goto L58653;

 L31169: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3041;  /* *sminv16qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58653;

 L31468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31469;
    }
  goto ret0;

 L31469: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (SMIN, V16QImode, operands)))
    {
      return 3081;  /* *sse4_1_sminv16qi3 */
    }
  goto ret0;

 L31182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58654;
  goto ret0;

 L58654: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31183;
    }
 L58655: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31585;
    }
  goto ret0;

 L31183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31184;
    }
  x2 = XEXP (x1, 0);
  goto L58655;

 L31184: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3043;  /* *umaxv16qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58655;

 L31585: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31586;
    }
  goto ret0;

 L31586: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10353 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_binary_operator_ok (UMAX, V16QImode, operands)))
    {
      return 3097;  /* *umaxv16qi3 */
    }
  goto ret0;

 L31197: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58656;
  goto ret0;

 L58656: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31198;
    }
 L58657: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31591;
    }
  goto ret0;

 L31198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31199;
    }
  x2 = XEXP (x1, 0);
  goto L58657;

 L31199: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3045;  /* *uminv16qi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58657;

 L31591: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31592;
    }
  goto ret0;

 L31592: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10353 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_binary_operator_ok (UMIN, V16QImode, operands)))
    {
      return 3098;  /* *uminv16qi3 */
    }
  goto ret0;

 L31794: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31795;
    }
  goto L58507;

 L31795: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31796;
    }
  goto L58507;

 L31796: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_XOP
   && ix86_binary_operator_ok (EQ, V16QImode, operands)))
    {
      return 3128;  /* *sse2_eqv16qi3 */
    }
  x1 = XEXP (x0, 1);
  goto L58507;

 L32010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L32011;
    }
  goto L58507;

 L32011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L32012;
    }
  goto L58507;

 L32012: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_XOP))
    {
      return 3160;  /* sse2_gtv16qi3 */
    }
  x1 = XEXP (x0, 1);
  goto L58507;

 L32096: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58658;
  goto ret0;

 L58658: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32097;
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L32533;
    }
  goto ret0;

 L32097: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L32098;
    }
  goto ret0;

 L32098: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L32099;
    }
  goto ret0;

 L32099: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3171;  /* *andnotv16qi3 */
    }
  goto ret0;

 L32533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L32534;
    }
  goto ret0;

 L32534: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V16QImode, operands)))
    {
      return 3223;  /* *andv16qi3 */
    }
  goto ret0;

 L32547: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L32548;
    }
  goto ret0;

 L32548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L32549;
    }
  goto ret0;

 L32549: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V16QImode, operands)))
    {
      return 3225;  /* *iorv16qi3 */
    }
  goto ret0;

 L32562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L32563;
    }
  goto ret0;

 L32563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L32564;
    }
  goto ret0;

 L32564: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V16QImode, operands)))
    {
      return 3227;  /* *xorv16qi3 */
    }
  goto ret0;

 L33627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V32QImode:
      goto L58660;
    case V16QImode:
      goto L58661;
    default:
      break;
    }
  goto ret0;

 L58660: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L33628;
  goto ret0;

 L33628: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L33629;
    }
  goto ret0;

 L33629: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L33630;
    }
  goto ret0;

 L33630: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L33631;
  goto ret0;

 L33631: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58662;
  goto ret0;

 L58662: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 8LL:
        goto L33632;
      case 0LL:
        goto L33910;
      default:
        break;
      }
  goto ret0;

 L33632: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L33633;
  goto ret0;

 L33633: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L33634;
  goto ret0;

 L33634: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L33635;
  goto ret0;

 L33635: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L33636;
  goto ret0;

 L33636: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L33637;
  goto ret0;

 L33637: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L33638;
  goto ret0;

 L33638: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L33639;
  goto ret0;

 L33639: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33640;
  goto ret0;

 L33640: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33641;
  goto ret0;

 L33641: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33642;
  goto ret0;

 L33642: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33643;
  goto ret0;

 L33643: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33644;
  goto ret0;

 L33644: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33645;
  goto ret0;

 L33645: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33646;
  goto ret0;

 L33646: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 11210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 3341;  /* vec_interleave_highv16qi */
    }
  goto ret0;

 L33910: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L33911;
  goto ret0;

 L33911: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L33912;
  goto ret0;

 L33912: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L33913;
  goto ret0;

 L33913: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L33914;
  goto ret0;

 L33914: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L33915;
  goto ret0;

 L33915: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L33916;
  goto ret0;

 L33916: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L33917;
  goto ret0;

 L33917: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L33918;
  goto ret0;

 L33918: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33919;
  goto ret0;

 L33919: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33920;
  goto ret0;

 L33920: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33921;
  goto ret0;

 L33921: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33922;
  goto ret0;

 L33922: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33923;
  goto ret0;

 L33923: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33924;
  goto ret0;

 L33924: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)]
      && 
#line 11306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3347;  /* vec_interleave_lowv16qi */
    }
  goto ret0;

 L58661: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L43683;
    }
  goto ret0;

 L43683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && palignr_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L43684;
    }
  goto ret0;

 L43684: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L43685;
    }
  goto ret0;

 L43685: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17444 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 4201;  /* *ssse3_palignrv16qi_perm */
    }
  goto ret0;

 L35606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L35607;
  goto ret0;

 L35607: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == PLUS)
    goto L35608;
  goto ret0;

 L35608: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16HImode
      && GET_CODE (x4) == PLUS)
    goto L35609;
  goto ret0;

 L35609: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35610;
  goto ret0;

 L35610: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16QImode))
    {
      operands[1] = x6;
      goto L35611;
    }
  goto ret0;

 L35611: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V16HImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35612;
  goto ret0;

 L35612: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16QImode))
    {
      operands[2] = x6;
      goto L35613;
    }
  goto ret0;

 L35613: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V16QImode))
    {
      operands[3] = x4;
      goto L35614;
    }
  goto ret0;

 L35614: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (PLUS, V16QImode, operands)))
    {
      return 3456;  /* *sse2_uavgv16qi3 */
    }
  goto ret0;

 L37823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L37824;
    }
  goto ret0;

 L37824: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3542;  /* *absv16qi2 */
    }
  goto ret0;

 L40023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58665;
  goto ret0;

 L58665: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == GE)
    goto L40646;
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40024;
    }
  goto ret0;

 L40646: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L40647;
    }
  goto ret0;

 L40647: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40648;
  goto ret0;

 L40648: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode)
    goto L58666;
  goto ret0;

 L58666: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ROTATE:
      goto L40649;
    case ASHIFT:
      goto L40701;
    default:
     break;
   }
  goto ret0;

 L40649: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L40650;
    }
  goto ret0;

 L40650: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40651;
  goto ret0;

 L40651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == ROTATERT)
    goto L40652;
  goto ret0;

 L40652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40653;
  goto ret0;

 L40653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == NEG)
    goto L40654;
  goto ret0;

 L40654: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 15943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3818;  /* xop_vrotlv16qi3 */
    }
  goto ret0;

 L40701: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L40702;
    }
  goto ret0;

 L40702: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40703;
  goto ret0;

 L40703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V16QImode)
    goto L58668;
  goto ret0;

 L58668: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFTRT:
      goto L40704;
    case LSHIFTRT:
      goto L40756;
    default:
     break;
   }
  goto ret0;

 L40704: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40705;
  goto ret0;

 L40705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == NEG)
    goto L40706;
  goto ret0;

 L40706: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16118 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3822;  /* xop_shav16qi3 */
    }
  goto ret0;

 L40756: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40757;
  goto ret0;

 L40757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == NEG)
    goto L40758;
  goto ret0;

 L40758: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16137 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3826;  /* xop_shlv16qi3 */
    }
  goto ret0;

 L40024: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L40025;
    }
  goto ret0;

 L40025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L40026;
    }
  goto ret0;

 L40026: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3776;  /* xop_pcmov_v16qi */
    }
  goto ret0;

 L40597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L40598;
    }
  goto ret0;

 L40598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40599;
    }
  goto ret0;

 L40599: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15888 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3810;  /* xop_rotlv16qi3 */
    }
  goto ret0;

 L40621: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L40622;
    }
  goto ret0;

 L40622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40623;
    }
  goto ret0;

 L40623: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15899 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3814;  /* xop_rotrv16qi3 */
    }
  goto ret0;

 L41056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode)
    goto L58670;
  goto ret0;

 L58670: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41057;
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L41874;
    }
  goto ret0;

 L41057: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L41058;
    }
  goto ret0;

 L41058: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41059;
  goto ret0;

 L41059: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58672;
  goto ret0;

 L58672: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L58674;
  goto ret0;

 L58674: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3871;  /* avx2_pbroadcastv16qi */
    }
 L58675: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3951;  /* avx512vl_vec_dupv16qi */
    }
  goto ret0;

 L41874: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3971;  /* *avx512vl_vec_dup_gprv16qi */
    }
 L42135: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16786 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4013;  /* *vec_dupv16qi */
    }
  goto ret0;

 L40845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L40846;
    }
  goto L58508;

 L40846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40847;
    }
  goto L58508;

 L40847: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16256 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3838;  /* xop_maskcmpv16qi3 */
    }
  x1 = XEXP (x0, 1);
  goto L58508;

 L40869: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L40870;
    }
  goto ret0;

 L40870: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40871;
    }
  goto ret0;

 L40871: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3842;  /* xop_maskcmp_unsv16qi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_29 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L26154;
    case TRUNCATE:
      goto L26176;
    case US_TRUNCATE:
      goto L26198;
    case VEC_MERGE:
      goto L26301;
    default:
     break;
   }
  goto ret0;

 L26154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L26155;
    }
  goto ret0;

 L26155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26156;
  goto ret0;

 L26156: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26157;
  goto ret0;

 L26157: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 14)
    goto L26158;
  goto ret0;

 L26158: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26159;
  goto ret0;

 L26159: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26160;
  goto ret0;

 L26160: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26161;
  goto ret0;

 L26161: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26162;
  goto ret0;

 L26162: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26163;
  goto ret0;

 L26163: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26164;
  goto ret0;

 L26164: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26165;
  goto ret0;

 L26165: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26166;
  goto ret0;

 L26166: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26167;
  goto ret0;

 L26167: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26168;
  goto ret0;

 L26168: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26169;
  goto ret0;

 L26169: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26170;
  goto ret0;

 L26170: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26171;
  goto ret0;

 L26171: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8685 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2584;  /* *avx512vl_ss_truncatev2div2qi2_store */
    }
  goto ret0;

 L26176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L26177;
    }
  goto ret0;

 L26177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26178;
  goto ret0;

 L26178: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26179;
  goto ret0;

 L26179: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 14)
    goto L26180;
  goto ret0;

 L26180: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26181;
  goto ret0;

 L26181: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26182;
  goto ret0;

 L26182: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26183;
  goto ret0;

 L26183: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26184;
  goto ret0;

 L26184: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26185;
  goto ret0;

 L26185: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26186;
  goto ret0;

 L26186: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26187;
  goto ret0;

 L26187: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26188;
  goto ret0;

 L26188: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26189;
  goto ret0;

 L26189: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26190;
  goto ret0;

 L26190: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26191;
  goto ret0;

 L26191: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26192;
  goto ret0;

 L26192: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26193;
  goto ret0;

 L26193: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8685 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2585;  /* *avx512vl_truncatev2div2qi2_store */
    }
  goto ret0;

 L26198: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L26199;
    }
  goto ret0;

 L26199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26200;
  goto ret0;

 L26200: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26201;
  goto ret0;

 L26201: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 14)
    goto L26202;
  goto ret0;

 L26202: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26203;
  goto ret0;

 L26203: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26204;
  goto ret0;

 L26204: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26205;
  goto ret0;

 L26205: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26206;
  goto ret0;

 L26206: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26207;
  goto ret0;

 L26207: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26208;
  goto ret0;

 L26208: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26209;
  goto ret0;

 L26209: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26210;
  goto ret0;

 L26210: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26211;
  goto ret0;

 L26211: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26212;
  goto ret0;

 L26212: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26213;
  goto ret0;

 L26213: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26214;
  goto ret0;

 L26214: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26215;
  goto ret0;

 L26215: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8685 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2586;  /* *avx512vl_us_truncatev2div2qi2_store */
    }
  goto ret0;

 L26301: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2QImode)
    goto L58694;
  goto ret0;

 L58694: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L26302;
    case TRUNCATE:
      goto L26331;
    case US_TRUNCATE:
      goto L26360;
    default:
     break;
   }
  goto ret0;

 L26302: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L26303;
    }
  goto ret0;

 L26303: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26304;
  goto ret0;

 L26304: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26305;
  goto ret0;

 L26305: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L26306;
  goto ret0;

 L26306: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26307;
  goto ret0;

 L26307: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26308;
  goto ret0;

 L26308: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26309;
    }
  goto ret0;

 L26309: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26310;
  goto ret0;

 L26310: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26311;
  goto ret0;

 L26311: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 14)
    goto L26312;
  goto ret0;

 L26312: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26313;
  goto ret0;

 L26313: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26314;
  goto ret0;

 L26314: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26315;
  goto ret0;

 L26315: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26316;
  goto ret0;

 L26316: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26317;
  goto ret0;

 L26317: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26318;
  goto ret0;

 L26318: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26319;
  goto ret0;

 L26319: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26320;
  goto ret0;

 L26320: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26321;
  goto ret0;

 L26321: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26322;
  goto ret0;

 L26322: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26323;
  goto ret0;

 L26323: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26324;
  goto ret0;

 L26324: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26325;
  goto ret0;

 L26325: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8734 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2590;  /* avx512vl_ss_truncatev2div2qi2_mask_store */
    }
  goto ret0;

 L26331: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L26332;
    }
  goto ret0;

 L26332: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26333;
  goto ret0;

 L26333: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26334;
  goto ret0;

 L26334: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L26335;
  goto ret0;

 L26335: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26336;
  goto ret0;

 L26336: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26337;
  goto ret0;

 L26337: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26338;
    }
  goto ret0;

 L26338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26339;
  goto ret0;

 L26339: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26340;
  goto ret0;

 L26340: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 14)
    goto L26341;
  goto ret0;

 L26341: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26342;
  goto ret0;

 L26342: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26343;
  goto ret0;

 L26343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26344;
  goto ret0;

 L26344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26345;
  goto ret0;

 L26345: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26346;
  goto ret0;

 L26346: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26347;
  goto ret0;

 L26347: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26348;
  goto ret0;

 L26348: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26349;
  goto ret0;

 L26349: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26350;
  goto ret0;

 L26350: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26351;
  goto ret0;

 L26351: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26352;
  goto ret0;

 L26352: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26353;
  goto ret0;

 L26353: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26354;
  goto ret0;

 L26354: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8734 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2591;  /* avx512vl_truncatev2div2qi2_mask_store */
    }
  goto ret0;

 L26360: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L26361;
    }
  goto ret0;

 L26361: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26362;
  goto ret0;

 L26362: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26363;
  goto ret0;

 L26363: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L26364;
  goto ret0;

 L26364: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26365;
  goto ret0;

 L26365: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26366;
  goto ret0;

 L26366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26367;
    }
  goto ret0;

 L26367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V14QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26368;
  goto ret0;

 L26368: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26369;
  goto ret0;

 L26369: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 14)
    goto L26370;
  goto ret0;

 L26370: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26371;
  goto ret0;

 L26371: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26372;
  goto ret0;

 L26372: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26373;
  goto ret0;

 L26373: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26374;
  goto ret0;

 L26374: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26375;
  goto ret0;

 L26375: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26376;
  goto ret0;

 L26376: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26377;
  goto ret0;

 L26377: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26378;
  goto ret0;

 L26378: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26379;
  goto ret0;

 L26379: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26380;
  goto ret0;

 L26380: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26381;
  goto ret0;

 L26381: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26382;
  goto ret0;

 L26382: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26383;
  goto ret0;

 L26383: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8734 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2592;  /* avx512vl_us_truncatev2div2qi2_mask_store */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_30 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L26671;
    case TRUNCATE:
      goto L26700;
    case US_TRUNCATE:
      goto L26729;
    default:
     break;
   }
  goto ret0;

 L26671: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L58706;
    case V4DImode:
      goto L58707;
    default:
      break;
    }
  goto ret0;

 L58706: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L26672;
    }
  goto ret0;

 L26672: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26673;
  goto ret0;

 L26673: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26674;
  goto ret0;

 L26674: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26675;
  goto ret0;

 L26675: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26676;
  goto ret0;

 L26676: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26677;
  goto ret0;

 L26677: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26678;
  goto ret0;

 L26678: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26679;
  goto ret0;

 L26679: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26680;
    }
  goto ret0;

 L26680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26681;
  goto ret0;

 L26681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26682;
  goto ret0;

 L26682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26683;
  goto ret0;

 L26683: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26684;
  goto ret0;

 L26684: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26685;
  goto ret0;

 L26685: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26686;
  goto ret0;

 L26686: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26687;
  goto ret0;

 L26687: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26688;
  goto ret0;

 L26688: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26689;
  goto ret0;

 L26689: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26690;
  goto ret0;

 L26690: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26691;
  goto ret0;

 L26691: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26692;
  goto ret0;

 L26692: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26693;
  goto ret0;

 L26693: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26694;
  goto ret0;

 L26694: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8803 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2605;  /* avx512vl_ss_truncatev4siv4qi2_mask_store */
    }
  goto ret0;

 L58707: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L26759;
    }
  goto ret0;

 L26759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26760;
  goto ret0;

 L26760: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26761;
  goto ret0;

 L26761: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26762;
  goto ret0;

 L26762: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26763;
  goto ret0;

 L26763: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26764;
  goto ret0;

 L26764: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26765;
  goto ret0;

 L26765: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26766;
  goto ret0;

 L26766: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26767;
    }
  goto ret0;

 L26767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26768;
  goto ret0;

 L26768: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26769;
  goto ret0;

 L26769: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26770;
  goto ret0;

 L26770: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26771;
  goto ret0;

 L26771: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26772;
  goto ret0;

 L26772: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26773;
  goto ret0;

 L26773: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26774;
  goto ret0;

 L26774: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26775;
  goto ret0;

 L26775: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26776;
  goto ret0;

 L26776: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26777;
  goto ret0;

 L26777: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26778;
  goto ret0;

 L26778: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26779;
  goto ret0;

 L26779: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26780;
  goto ret0;

 L26780: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26781;
  goto ret0;

 L26781: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8803 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2608;  /* avx512vl_ss_truncatev4div4qi2_mask_store */
    }
  goto ret0;

 L26700: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L58708;
    case V4DImode:
      goto L58709;
    default:
      break;
    }
  goto ret0;

 L58708: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L26701;
    }
  goto ret0;

 L26701: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26702;
  goto ret0;

 L26702: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26703;
  goto ret0;

 L26703: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26704;
  goto ret0;

 L26704: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26705;
  goto ret0;

 L26705: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26706;
  goto ret0;

 L26706: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26707;
  goto ret0;

 L26707: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26708;
  goto ret0;

 L26708: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26709;
    }
  goto ret0;

 L26709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26710;
  goto ret0;

 L26710: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26711;
  goto ret0;

 L26711: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26712;
  goto ret0;

 L26712: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26713;
  goto ret0;

 L26713: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26714;
  goto ret0;

 L26714: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26715;
  goto ret0;

 L26715: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26716;
  goto ret0;

 L26716: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26717;
  goto ret0;

 L26717: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26718;
  goto ret0;

 L26718: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26719;
  goto ret0;

 L26719: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26720;
  goto ret0;

 L26720: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26721;
  goto ret0;

 L26721: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26722;
  goto ret0;

 L26722: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26723;
  goto ret0;

 L26723: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8803 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2606;  /* avx512vl_truncatev4siv4qi2_mask_store */
    }
  goto ret0;

 L58709: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L26788;
    }
  goto ret0;

 L26788: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26789;
  goto ret0;

 L26789: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26790;
  goto ret0;

 L26790: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26791;
  goto ret0;

 L26791: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26792;
  goto ret0;

 L26792: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26793;
  goto ret0;

 L26793: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26794;
  goto ret0;

 L26794: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26795;
  goto ret0;

 L26795: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26796;
    }
  goto ret0;

 L26796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26797;
  goto ret0;

 L26797: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26798;
  goto ret0;

 L26798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26799;
  goto ret0;

 L26799: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26800;
  goto ret0;

 L26800: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26801;
  goto ret0;

 L26801: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26802;
  goto ret0;

 L26802: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26803;
  goto ret0;

 L26803: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26804;
  goto ret0;

 L26804: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26805;
  goto ret0;

 L26805: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26806;
  goto ret0;

 L26806: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26807;
  goto ret0;

 L26807: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26808;
  goto ret0;

 L26808: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26809;
  goto ret0;

 L26809: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26810;
  goto ret0;

 L26810: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8803 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2609;  /* avx512vl_truncatev4div4qi2_mask_store */
    }
  goto ret0;

 L26729: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L58710;
    case V4DImode:
      goto L58711;
    default:
      break;
    }
  goto ret0;

 L58710: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L26730;
    }
  goto ret0;

 L26730: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26731;
  goto ret0;

 L26731: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26732;
  goto ret0;

 L26732: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26733;
  goto ret0;

 L26733: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26734;
  goto ret0;

 L26734: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26735;
  goto ret0;

 L26735: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26736;
  goto ret0;

 L26736: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26737;
  goto ret0;

 L26737: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26738;
    }
  goto ret0;

 L26738: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26739;
  goto ret0;

 L26739: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26740;
  goto ret0;

 L26740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26741;
  goto ret0;

 L26741: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26742;
  goto ret0;

 L26742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26743;
  goto ret0;

 L26743: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26744;
  goto ret0;

 L26744: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26745;
  goto ret0;

 L26745: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26746;
  goto ret0;

 L26746: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26747;
  goto ret0;

 L26747: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26748;
  goto ret0;

 L26748: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26749;
  goto ret0;

 L26749: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26750;
  goto ret0;

 L26750: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26751;
  goto ret0;

 L26751: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26752;
  goto ret0;

 L26752: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8803 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2607;  /* avx512vl_us_truncatev4siv4qi2_mask_store */
    }
  goto ret0;

 L58711: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L26817;
    }
  goto ret0;

 L26817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L26818;
  goto ret0;

 L26818: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L26819;
  goto ret0;

 L26819: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L26820;
  goto ret0;

 L26820: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L26821;
  goto ret0;

 L26821: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L26822;
  goto ret0;

 L26822: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L26823;
  goto ret0;

 L26823: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L26824;
  goto ret0;

 L26824: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L26825;
    }
  goto ret0;

 L26825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26826;
  goto ret0;

 L26826: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26827;
  goto ret0;

 L26827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26828;
  goto ret0;

 L26828: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26829;
  goto ret0;

 L26829: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26830;
  goto ret0;

 L26830: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26831;
  goto ret0;

 L26831: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26832;
  goto ret0;

 L26832: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26833;
  goto ret0;

 L26833: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26834;
  goto ret0;

 L26834: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26835;
  goto ret0;

 L26835: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26836;
  goto ret0;

 L26836: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26837;
  goto ret0;

 L26837: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26838;
  goto ret0;

 L26838: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26839;
  goto ret0;

 L26839: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8803 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2610;  /* avx512vl_us_truncatev4div4qi2_mask_store */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_31 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L26388;
    case TRUNCATE:
      goto L26408;
    case US_TRUNCATE:
      goto L26428;
    case VEC_MERGE:
      goto L26670;
    default:
     break;
   }
  goto ret0;

 L26388: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L58697;
    case V4DImode:
      goto L58698;
    default:
      break;
    }
  goto ret0;

 L58697: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L26389;
    }
  goto ret0;

 L26389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26390;
  goto ret0;

 L26390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26391;
  goto ret0;

 L26391: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26392;
  goto ret0;

 L26392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26393;
  goto ret0;

 L26393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26394;
  goto ret0;

 L26394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26395;
  goto ret0;

 L26395: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26396;
  goto ret0;

 L26396: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26397;
  goto ret0;

 L26397: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26398;
  goto ret0;

 L26398: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26399;
  goto ret0;

 L26399: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26400;
  goto ret0;

 L26400: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26401;
  goto ret0;

 L26401: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26402;
  goto ret0;

 L26402: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26403;
  goto ret0;

 L26403: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2593;  /* *avx512vl_ss_truncatev4siv4qi2_store */
    }
  goto ret0;

 L58698: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L26449;
    }
  goto ret0;

 L26449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26450;
  goto ret0;

 L26450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26451;
  goto ret0;

 L26451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26452;
  goto ret0;

 L26452: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26453;
  goto ret0;

 L26453: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26454;
  goto ret0;

 L26454: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26455;
  goto ret0;

 L26455: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26456;
  goto ret0;

 L26456: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26457;
  goto ret0;

 L26457: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26458;
  goto ret0;

 L26458: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26459;
  goto ret0;

 L26459: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26460;
  goto ret0;

 L26460: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26461;
  goto ret0;

 L26461: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26462;
  goto ret0;

 L26462: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26463;
  goto ret0;

 L26463: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2596;  /* *avx512vl_ss_truncatev4div4qi2_store */
    }
  goto ret0;

 L26408: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L58699;
    case V4DImode:
      goto L58700;
    default:
      break;
    }
  goto ret0;

 L58699: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L26409;
    }
  goto ret0;

 L26409: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26410;
  goto ret0;

 L26410: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26411;
  goto ret0;

 L26411: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26412;
  goto ret0;

 L26412: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26413;
  goto ret0;

 L26413: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26414;
  goto ret0;

 L26414: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26415;
  goto ret0;

 L26415: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26416;
  goto ret0;

 L26416: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26417;
  goto ret0;

 L26417: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26418;
  goto ret0;

 L26418: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26419;
  goto ret0;

 L26419: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26420;
  goto ret0;

 L26420: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26421;
  goto ret0;

 L26421: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26422;
  goto ret0;

 L26422: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26423;
  goto ret0;

 L26423: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2594;  /* *avx512vl_truncatev4siv4qi2_store */
    }
  goto ret0;

 L58700: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L26469;
    }
  goto ret0;

 L26469: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26470;
  goto ret0;

 L26470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26471;
  goto ret0;

 L26471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26472;
  goto ret0;

 L26472: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26473;
  goto ret0;

 L26473: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26474;
  goto ret0;

 L26474: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26475;
  goto ret0;

 L26475: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26476;
  goto ret0;

 L26476: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26477;
  goto ret0;

 L26477: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26478;
  goto ret0;

 L26478: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26479;
  goto ret0;

 L26479: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26480;
  goto ret0;

 L26480: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26481;
  goto ret0;

 L26481: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26482;
  goto ret0;

 L26482: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26483;
  goto ret0;

 L26483: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2597;  /* *avx512vl_truncatev4div4qi2_store */
    }
  goto ret0;

 L26428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L58701;
    case V4DImode:
      goto L58702;
    default:
      break;
    }
  goto ret0;

 L58701: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L26429;
    }
  goto ret0;

 L26429: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26430;
  goto ret0;

 L26430: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26431;
  goto ret0;

 L26431: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26432;
  goto ret0;

 L26432: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26433;
  goto ret0;

 L26433: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26434;
  goto ret0;

 L26434: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26435;
  goto ret0;

 L26435: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26436;
  goto ret0;

 L26436: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26437;
  goto ret0;

 L26437: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26438;
  goto ret0;

 L26438: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26439;
  goto ret0;

 L26439: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26440;
  goto ret0;

 L26440: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26441;
  goto ret0;

 L26441: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26442;
  goto ret0;

 L26442: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26443;
  goto ret0;

 L26443: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2595;  /* *avx512vl_us_truncatev4siv4qi2_store */
    }
  goto ret0;

 L58702: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L26489;
    }
  goto ret0;

 L26489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V12QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26490;
  goto ret0;

 L26490: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26491;
  goto ret0;

 L26491: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 12)
    goto L26492;
  goto ret0;

 L26492: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L26493;
  goto ret0;

 L26493: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L26494;
  goto ret0;

 L26494: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L26495;
  goto ret0;

 L26495: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L26496;
  goto ret0;

 L26496: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26497;
  goto ret0;

 L26497: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26498;
  goto ret0;

 L26498: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26499;
  goto ret0;

 L26499: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26500;
  goto ret0;

 L26500: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26501;
  goto ret0;

 L26501: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26502;
  goto ret0;

 L26502: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26503;
  goto ret0;

 L26503: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2598;  /* *avx512vl_us_truncatev4div4qi2_store */
    }
  goto ret0;

 L26670: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4QImode)
    goto L58703;
  goto ret0;

 L58703: ATTRIBUTE_UNUSED_LABEL
  return recog_30 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_32 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27103;
    case TRUNCATE:
      goto L27132;
    case US_TRUNCATE:
      goto L27161;
    default:
     break;
   }
  goto ret0;

 L27103: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8HImode:
      goto L58724;
    case V8SImode:
      goto L58725;
    case V8DImode:
      goto L58726;
    default:
      break;
    }
  goto ret0;

 L58724: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L27104;
    }
  goto ret0;

 L27104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27105;
  goto ret0;

 L27105: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27106;
  goto ret0;

 L27106: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27107;
  goto ret0;

 L27107: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27108;
  goto ret0;

 L27108: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27109;
  goto ret0;

 L27109: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27110;
  goto ret0;

 L27110: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27111;
  goto ret0;

 L27111: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27112;
  goto ret0;

 L27112: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27113;
  goto ret0;

 L27113: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27114;
  goto ret0;

 L27114: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27115;
  goto ret0;

 L27115: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27116;
    }
  goto ret0;

 L27116: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27117;
  goto ret0;

 L27117: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27118;
  goto ret0;

 L27118: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L27119;
  goto ret0;

 L27119: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L27120;
  goto ret0;

 L27120: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L27121;
  goto ret0;

 L27121: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L27122;
  goto ret0;

 L27122: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L27123;
  goto ret0;

 L27123: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L27124;
  goto ret0;

 L27124: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L27125;
  goto ret0;

 L27125: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L27126;
  goto ret0;

 L27126: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 8873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2623;  /* avx512vl_ss_truncatev8hiv8qi2_mask_store */
    }
  goto ret0;

 L58725: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L27191;
    }
  goto ret0;

 L27191: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27192;
  goto ret0;

 L27192: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27193;
  goto ret0;

 L27193: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27194;
  goto ret0;

 L27194: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27195;
  goto ret0;

 L27195: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27196;
  goto ret0;

 L27196: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27197;
  goto ret0;

 L27197: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27198;
  goto ret0;

 L27198: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27199;
  goto ret0;

 L27199: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27200;
  goto ret0;

 L27200: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27201;
  goto ret0;

 L27201: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27202;
  goto ret0;

 L27202: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27203;
    }
  goto ret0;

 L27203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27204;
  goto ret0;

 L27204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27205;
  goto ret0;

 L27205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L27206;
  goto ret0;

 L27206: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L27207;
  goto ret0;

 L27207: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L27208;
  goto ret0;

 L27208: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L27209;
  goto ret0;

 L27209: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L27210;
  goto ret0;

 L27210: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L27211;
  goto ret0;

 L27211: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L27212;
  goto ret0;

 L27212: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L27213;
  goto ret0;

 L27213: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2626;  /* avx512vl_ss_truncatev8siv8qi2_mask_store */
    }
  goto ret0;

 L58726: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L28133;
    }
  goto ret0;

 L28133: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L28134;
  goto ret0;

 L28134: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L28135;
  goto ret0;

 L28135: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L28136;
  goto ret0;

 L28136: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28137;
  goto ret0;

 L28137: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L28138;
  goto ret0;

 L28138: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L28139;
  goto ret0;

 L28139: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L28140;
  goto ret0;

 L28140: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L28141;
  goto ret0;

 L28141: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L28142;
  goto ret0;

 L28142: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L28143;
  goto ret0;

 L28143: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L28144;
  goto ret0;

 L28144: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L28145;
    }
  goto ret0;

 L28145: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L28146;
  goto ret0;

 L28146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L28147;
  goto ret0;

 L28147: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L28148;
  goto ret0;

 L28148: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L28149;
  goto ret0;

 L28149: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L28150;
  goto ret0;

 L28150: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L28151;
  goto ret0;

 L28151: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L28152;
  goto ret0;

 L28152: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L28153;
  goto ret0;

 L28153: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L28154;
  goto ret0;

 L28154: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L28155;
  goto ret0;

 L28155: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9154 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2686;  /* avx512f_ss_truncatev8div16qi2_mask_store */
    }
  goto ret0;

 L27132: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8HImode:
      goto L58727;
    case V8SImode:
      goto L58728;
    case V8DImode:
      goto L58729;
    default:
      break;
    }
  goto ret0;

 L58727: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L27133;
    }
  goto ret0;

 L27133: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27134;
  goto ret0;

 L27134: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27135;
  goto ret0;

 L27135: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27136;
  goto ret0;

 L27136: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27137;
  goto ret0;

 L27137: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27138;
  goto ret0;

 L27138: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27139;
  goto ret0;

 L27139: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27140;
  goto ret0;

 L27140: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27141;
  goto ret0;

 L27141: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27142;
  goto ret0;

 L27142: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27143;
  goto ret0;

 L27143: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27144;
  goto ret0;

 L27144: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27145;
    }
  goto ret0;

 L27145: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27146;
  goto ret0;

 L27146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27147;
  goto ret0;

 L27147: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L27148;
  goto ret0;

 L27148: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L27149;
  goto ret0;

 L27149: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L27150;
  goto ret0;

 L27150: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L27151;
  goto ret0;

 L27151: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L27152;
  goto ret0;

 L27152: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L27153;
  goto ret0;

 L27153: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L27154;
  goto ret0;

 L27154: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L27155;
  goto ret0;

 L27155: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 8873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2624;  /* avx512vl_truncatev8hiv8qi2_mask_store */
    }
  goto ret0;

 L58728: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L27220;
    }
  goto ret0;

 L27220: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27221;
  goto ret0;

 L27221: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27222;
  goto ret0;

 L27222: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27223;
  goto ret0;

 L27223: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27224;
  goto ret0;

 L27224: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27225;
  goto ret0;

 L27225: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27226;
  goto ret0;

 L27226: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27227;
  goto ret0;

 L27227: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27228;
  goto ret0;

 L27228: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27229;
  goto ret0;

 L27229: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27230;
  goto ret0;

 L27230: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27231;
  goto ret0;

 L27231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27232;
    }
  goto ret0;

 L27232: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27233;
  goto ret0;

 L27233: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27234;
  goto ret0;

 L27234: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L27235;
  goto ret0;

 L27235: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L27236;
  goto ret0;

 L27236: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L27237;
  goto ret0;

 L27237: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L27238;
  goto ret0;

 L27238: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L27239;
  goto ret0;

 L27239: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L27240;
  goto ret0;

 L27240: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L27241;
  goto ret0;

 L27241: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L27242;
  goto ret0;

 L27242: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2627;  /* avx512vl_truncatev8siv8qi2_mask_store */
    }
  goto ret0;

 L58729: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L28162;
    }
  goto ret0;

 L28162: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L28163;
  goto ret0;

 L28163: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L28164;
  goto ret0;

 L28164: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L28165;
  goto ret0;

 L28165: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28166;
  goto ret0;

 L28166: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L28167;
  goto ret0;

 L28167: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L28168;
  goto ret0;

 L28168: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L28169;
  goto ret0;

 L28169: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L28170;
  goto ret0;

 L28170: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L28171;
  goto ret0;

 L28171: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L28172;
  goto ret0;

 L28172: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L28173;
  goto ret0;

 L28173: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L28174;
    }
  goto ret0;

 L28174: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L28175;
  goto ret0;

 L28175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L28176;
  goto ret0;

 L28176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L28177;
  goto ret0;

 L28177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L28178;
  goto ret0;

 L28178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L28179;
  goto ret0;

 L28179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L28180;
  goto ret0;

 L28180: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L28181;
  goto ret0;

 L28181: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L28182;
  goto ret0;

 L28182: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L28183;
  goto ret0;

 L28183: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L28184;
  goto ret0;

 L28184: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9154 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2687;  /* avx512f_truncatev8div16qi2_mask_store */
    }
  goto ret0;

 L27161: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8HImode:
      goto L58730;
    case V8SImode:
      goto L58731;
    case V8DImode:
      goto L58732;
    default:
      break;
    }
  goto ret0;

 L58730: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L27162;
    }
  goto ret0;

 L27162: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27163;
  goto ret0;

 L27163: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27164;
  goto ret0;

 L27164: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27165;
  goto ret0;

 L27165: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27166;
  goto ret0;

 L27166: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27167;
  goto ret0;

 L27167: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27168;
  goto ret0;

 L27168: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27169;
  goto ret0;

 L27169: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27170;
  goto ret0;

 L27170: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27171;
  goto ret0;

 L27171: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27172;
  goto ret0;

 L27172: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27173;
  goto ret0;

 L27173: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27174;
    }
  goto ret0;

 L27174: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27175;
  goto ret0;

 L27175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27176;
  goto ret0;

 L27176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L27177;
  goto ret0;

 L27177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L27178;
  goto ret0;

 L27178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L27179;
  goto ret0;

 L27179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L27180;
  goto ret0;

 L27180: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L27181;
  goto ret0;

 L27181: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L27182;
  goto ret0;

 L27182: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L27183;
  goto ret0;

 L27183: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L27184;
  goto ret0;

 L27184: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 8873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2625;  /* avx512vl_us_truncatev8hiv8qi2_mask_store */
    }
  goto ret0;

 L58731: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L27249;
    }
  goto ret0;

 L27249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27250;
  goto ret0;

 L27250: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27251;
  goto ret0;

 L27251: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L27252;
  goto ret0;

 L27252: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27253;
  goto ret0;

 L27253: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27254;
  goto ret0;

 L27254: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27255;
  goto ret0;

 L27255: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27256;
  goto ret0;

 L27256: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27257;
  goto ret0;

 L27257: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27258;
  goto ret0;

 L27258: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27259;
  goto ret0;

 L27259: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L27260;
  goto ret0;

 L27260: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27261;
    }
  goto ret0;

 L27261: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27262;
  goto ret0;

 L27262: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27263;
  goto ret0;

 L27263: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L27264;
  goto ret0;

 L27264: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L27265;
  goto ret0;

 L27265: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L27266;
  goto ret0;

 L27266: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L27267;
  goto ret0;

 L27267: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L27268;
  goto ret0;

 L27268: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L27269;
  goto ret0;

 L27269: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L27270;
  goto ret0;

 L27270: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L27271;
  goto ret0;

 L27271: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2628;  /* avx512vl_us_truncatev8siv8qi2_mask_store */
    }
  goto ret0;

 L58732: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L28191;
    }
  goto ret0;

 L28191: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L28192;
  goto ret0;

 L28192: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L28193;
  goto ret0;

 L28193: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L28194;
  goto ret0;

 L28194: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L28195;
  goto ret0;

 L28195: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L28196;
  goto ret0;

 L28196: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L28197;
  goto ret0;

 L28197: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L28198;
  goto ret0;

 L28198: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L28199;
  goto ret0;

 L28199: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L28200;
  goto ret0;

 L28200: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L28201;
  goto ret0;

 L28201: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L28202;
  goto ret0;

 L28202: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L28203;
    }
  goto ret0;

 L28203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L28204;
  goto ret0;

 L28204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L28205;
  goto ret0;

 L28205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L28206;
  goto ret0;

 L28206: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L28207;
  goto ret0;

 L28207: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L28208;
  goto ret0;

 L28208: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L28209;
  goto ret0;

 L28209: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L28210;
  goto ret0;

 L28210: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L28211;
  goto ret0;

 L28211: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L28212;
  goto ret0;

 L28212: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L28213;
  goto ret0;

 L28213: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9154 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2688;  /* avx512f_us_truncatev8div16qi2_mask_store */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_33 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L26844;
    case TRUNCATE:
      goto L26860;
    case US_TRUNCATE:
      goto L26876;
    case VEC_MERGE:
      goto L27102;
    default:
     break;
   }
  goto ret0;

 L26844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L58712;
    case V8SImode:
      goto L58713;
    case V8DImode:
      goto L58714;
    default:
      break;
    }
  goto ret0;

 L58712: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L26845;
    }
  goto ret0;

 L26845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26846;
  goto ret0;

 L26846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26847;
  goto ret0;

 L26847: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L26848;
  goto ret0;

 L26848: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26849;
  goto ret0;

 L26849: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26850;
  goto ret0;

 L26850: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26851;
  goto ret0;

 L26851: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26852;
  goto ret0;

 L26852: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26853;
  goto ret0;

 L26853: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26854;
  goto ret0;

 L26854: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26855;
  goto ret0;

 L26855: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 8824 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2611;  /* *avx512vl_ss_truncatev8hiv8qi2_store */
    }
  goto ret0;

 L58713: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26893;
    }
  goto ret0;

 L26893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26894;
  goto ret0;

 L26894: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26895;
  goto ret0;

 L26895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L26896;
  goto ret0;

 L26896: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26897;
  goto ret0;

 L26897: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26898;
  goto ret0;

 L26898: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26899;
  goto ret0;

 L26899: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26900;
  goto ret0;

 L26900: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26901;
  goto ret0;

 L26901: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26902;
  goto ret0;

 L26902: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26903;
  goto ret0;

 L26903: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8824 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2614;  /* *avx512vl_ss_truncatev8siv8qi2_store */
    }
  goto ret0;

 L58714: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L28003;
    }
  goto ret0;

 L28003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L28004;
  goto ret0;

 L28004: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L28005;
  goto ret0;

 L28005: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L28006;
  goto ret0;

 L28006: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L28007;
  goto ret0;

 L28007: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L28008;
  goto ret0;

 L28008: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L28009;
  goto ret0;

 L28009: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L28010;
  goto ret0;

 L28010: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L28011;
  goto ret0;

 L28011: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L28012;
  goto ret0;

 L28012: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L28013;
  goto ret0;

 L28013: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9105 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2680;  /* *avx512f_ss_truncatev8div16qi2_store */
    }
  goto ret0;

 L26860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L58715;
    case V8SImode:
      goto L58716;
    case V8DImode:
      goto L58717;
    default:
      break;
    }
  goto ret0;

 L58715: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L26861;
    }
  goto ret0;

 L26861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26862;
  goto ret0;

 L26862: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26863;
  goto ret0;

 L26863: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L26864;
  goto ret0;

 L26864: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26865;
  goto ret0;

 L26865: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26866;
  goto ret0;

 L26866: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26867;
  goto ret0;

 L26867: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26868;
  goto ret0;

 L26868: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26869;
  goto ret0;

 L26869: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26870;
  goto ret0;

 L26870: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26871;
  goto ret0;

 L26871: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 8824 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2612;  /* *avx512vl_truncatev8hiv8qi2_store */
    }
  goto ret0;

 L58716: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26909;
    }
  goto ret0;

 L26909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26910;
  goto ret0;

 L26910: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26911;
  goto ret0;

 L26911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L26912;
  goto ret0;

 L26912: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26913;
  goto ret0;

 L26913: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26914;
  goto ret0;

 L26914: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26915;
  goto ret0;

 L26915: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26916;
  goto ret0;

 L26916: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26917;
  goto ret0;

 L26917: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26918;
  goto ret0;

 L26918: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26919;
  goto ret0;

 L26919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8824 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2615;  /* *avx512vl_truncatev8siv8qi2_store */
    }
  goto ret0;

 L58717: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L28019;
    }
  goto ret0;

 L28019: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L28020;
  goto ret0;

 L28020: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L28021;
  goto ret0;

 L28021: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L28022;
  goto ret0;

 L28022: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L28023;
  goto ret0;

 L28023: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L28024;
  goto ret0;

 L28024: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L28025;
  goto ret0;

 L28025: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L28026;
  goto ret0;

 L28026: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L28027;
  goto ret0;

 L28027: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L28028;
  goto ret0;

 L28028: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L28029;
  goto ret0;

 L28029: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9105 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2681;  /* *avx512f_truncatev8div16qi2_store */
    }
  goto ret0;

 L26876: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L58718;
    case V8SImode:
      goto L58719;
    case V8DImode:
      goto L58720;
    default:
      break;
    }
  goto ret0;

 L58718: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L26877;
    }
  goto ret0;

 L26877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26878;
  goto ret0;

 L26878: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26879;
  goto ret0;

 L26879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L26880;
  goto ret0;

 L26880: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26881;
  goto ret0;

 L26881: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26882;
  goto ret0;

 L26882: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26883;
  goto ret0;

 L26883: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26884;
  goto ret0;

 L26884: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26885;
  goto ret0;

 L26885: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26886;
  goto ret0;

 L26886: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26887;
  goto ret0;

 L26887: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 8824 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8811 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2613;  /* *avx512vl_us_truncatev8hiv8qi2_store */
    }
  goto ret0;

 L58719: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26925;
    }
  goto ret0;

 L26925: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L26926;
  goto ret0;

 L26926: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L26927;
  goto ret0;

 L26927: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L26928;
  goto ret0;

 L26928: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L26929;
  goto ret0;

 L26929: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L26930;
  goto ret0;

 L26930: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L26931;
  goto ret0;

 L26931: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L26932;
  goto ret0;

 L26932: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L26933;
  goto ret0;

 L26933: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L26934;
  goto ret0;

 L26934: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L26935;
  goto ret0;

 L26935: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8824 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2616;  /* *avx512vl_us_truncatev8siv8qi2_store */
    }
  goto ret0;

 L58720: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L28035;
    }
  goto ret0;

 L28035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L28036;
  goto ret0;

 L28036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L28037;
  goto ret0;

 L28037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L28038;
  goto ret0;

 L28038: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L28039;
  goto ret0;

 L28039: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L28040;
  goto ret0;

 L28040: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L28041;
  goto ret0;

 L28041: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L28042;
  goto ret0;

 L28042: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L28043;
  goto ret0;

 L28043: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L28044;
  goto ret0;

 L28044: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L28045;
  goto ret0;

 L28045: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9105 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2682;  /* *avx512f_us_truncatev8div16qi2_store */
    }
  goto ret0;

 L27102: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode)
    goto L58721;
  goto ret0;

 L58721: ATTRIBUTE_UNUSED_LABEL
  return recog_32 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_34 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (GET_CODE (x1) == MEM)
    goto L35765;
 L57052: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16QImode))
    {
      operands[0] = x1;
      goto L23537;
    }
 L57084: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V16QImode))
    {
      operands[0] = x1;
      goto L11647;
    }
 L57102: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V16QImode))
    {
      operands[0] = x1;
      goto L11899;
    }
  goto ret0;

 L35765: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L58453;
    case DImode:
      goto L58454;
    default:
      break;
    }
  goto L57052;

 L58453: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L35766;
    }
  goto L57052;

 L35766: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 42)
    goto L35767;
  x1 = XEXP (x0, 0);
  goto L57052;

 L35767: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L35768;
    }
  x1 = XEXP (x0, 0);
  goto L57052;

 L35768: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L35769;
    }
  x1 = XEXP (x0, 0);
  goto L57052;

 L35769: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == MEM)
    goto L35770;
  x1 = XEXP (x0, 0);
  goto L57052;

 L35770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0])
      && (
#line 13117 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3473;  /* *sse2_maskmovdqu */
    }
  x1 = XEXP (x0, 0);
  goto L57052;

 L58454: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L35774;
    }
  goto L57052;

 L35774: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 42)
    goto L35775;
  x1 = XEXP (x0, 0);
  goto L57052;

 L35775: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L35776;
    }
  x1 = XEXP (x0, 0);
  goto L57052;

 L35776: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L35777;
    }
  x1 = XEXP (x0, 0);
  goto L57052;

 L35777: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == MEM)
    goto L35778;
  x1 = XEXP (x0, 0);
  goto L57052;

 L35778: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0])
      && (
#line 13117 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3474;  /* *sse2_maskmovdqu */
    }
  x1 = XEXP (x0, 0);
  goto L57052;

 L23537: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode)
    goto L58455;
 L11480: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V16QImode))
    {
      operands[1] = x1;
      goto L11481;
    }
  x1 = XEXP (x0, 0);
  goto L57084;

 L58455: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L23538;
    case SS_TRUNCATE:
      goto L25736;
    case TRUNCATE:
      goto L25741;
    case US_TRUNCATE:
      goto L25746;
    case VEC_MERGE:
      goto L25796;
    default:
     break;
   }
  goto L11480;

 L23538: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32QImode)
    goto L58460;
  goto L11480;

 L58460: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L23539;
    }
 L58461: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L23560;
    }
  goto L11480;

 L23539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L23540;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23540: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23541;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23541: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23542;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23542: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23543;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23543: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23544;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23544: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23545;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23545: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23546;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23546: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23547;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23547: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23548;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23548: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23549;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23549: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23550;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23550: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23551;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23551: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23552;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23552: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23553;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23553: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23554;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23554: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23555;
  x2 = XEXP (x1, 0);
  goto L58461;

 L23555: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 7286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2314;  /* vec_extract_lo_v32qi */
    }
  x2 = XEXP (x1, 0);
  goto L58461;

 L23560: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L23561;
  goto L11480;

 L23561: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L23562;
  goto L11480;

 L23562: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L23563;
  goto L11480;

 L23563: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L23564;
  goto L11480;

 L23564: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L23565;
  goto L11480;

 L23565: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L23566;
  goto L11480;

 L23566: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L23567;
  goto L11480;

 L23567: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L23568;
  goto L11480;

 L23568: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L23569;
  goto L11480;

 L23569: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L23570;
  goto L11480;

 L23570: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L23571;
  goto L11480;

 L23571: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L23572;
  goto L11480;

 L23572: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L23573;
  goto L11480;

 L23573: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L23574;
  goto L11480;

 L23574: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L23575;
  goto L11480;

 L23575: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L23576;
  goto L11480;

 L23576: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 7309 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 2315;  /* vec_extract_hi_v32qi */
    }
  goto L11480;

 L25736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L58462;
    case V16HImode:
      goto L58463;
    default:
      break;
    }
  goto L11480;

 L58462: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L25737;
    }
  goto L11480;

 L25737: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2521;  /* *avx512f_ss_truncatev16siv16qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L58463: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L25962;
    }
  goto L11480;

 L25962: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2557;  /* *avx512vl_ss_truncatev16hiv16qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L25741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L58464;
    case V16HImode:
      goto L58465;
    default:
      break;
    }
  goto L11480;

 L58464: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L25742;
    }
  goto L11480;

 L25742: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2522;  /* *avx512f_truncatev16siv16qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L58465: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L25967;
    }
  goto L11480;

 L25967: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2558;  /* *avx512vl_truncatev16hiv16qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L25746: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L58466;
    case V16HImode:
      goto L58467;
    default:
      break;
    }
  goto L11480;

 L58466: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L25747;
    }
  goto L11480;

 L25747: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2523;  /* *avx512f_us_truncatev16siv16qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L58467: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L25972;
    }
  goto L11480;

 L25972: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2559;  /* *avx512vl_us_truncatev16hiv16qi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L25796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58468;
  goto L11480;

 L58468: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L25797;
    case TRUNCATE:
      goto L25805;
    case US_TRUNCATE:
      goto L25813;
    default:
     break;
   }
  goto L11480;

 L25797: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L58471;
    case V16HImode:
      goto L58472;
    default:
      break;
    }
  goto L11480;

 L58471: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L25798;
    }
  goto L11480;

 L25798: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L25799;
    }
  goto L11480;

 L25799: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L25800;
    }
  goto L11480;

 L25800: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2533;  /* avx512f_ss_truncatev16siv16qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L58472: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L26026;
    }
  goto L11480;

 L26026: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L26027;
    }
  goto L11480;

 L26027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L26028;
    }
  goto L11480;

 L26028: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2566;  /* avx512vl_ss_truncatev16hiv16qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L25805: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L58473;
    case V16HImode:
      goto L58474;
    default:
      break;
    }
  goto L11480;

 L58473: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L25806;
    }
  goto L11480;

 L25806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L25807;
    }
  goto L11480;

 L25807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L25808;
    }
  goto L11480;

 L25808: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2534;  /* avx512f_truncatev16siv16qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L58474: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L26034;
    }
  goto L11480;

 L26034: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L26035;
    }
  goto L11480;

 L26035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L26036;
    }
  goto L11480;

 L26036: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2567;  /* avx512vl_truncatev16hiv16qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L25813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L58475;
    case V16HImode:
      goto L58476;
    default:
      break;
    }
  goto L11480;

 L58475: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L25814;
    }
  goto L11480;

 L25814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L25815;
    }
  goto L11480;

 L25815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L25816;
    }
  goto L11480;

 L25816: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2535;  /* avx512f_us_truncatev16siv16qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L58476: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L26042;
    }
  goto L11480;

 L26042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L26043;
    }
  goto L11480;

 L26043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L26044;
    }
  goto L11480;

 L26044: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 8613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2568;  /* avx512vl_us_truncatev16hiv16qi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11480;

 L11481: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V16QImode)
       || register_operand (operands[1], V16QImode))))
    {
      return 999;  /* *movv16qi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57084;

 L11647: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode)
    goto L58477;
  x1 = XEXP (x0, 0);
  goto L57102;

 L58477: ATTRIBUTE_UNUSED_LABEL
  tem = recog_28 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57102;

 L11899: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode)
    goto L58676;
  goto ret0;

 L58676: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11900;
    case UNSPEC:
      goto L58679;
    case VEC_CONCAT:
      goto L26153;
    default:
     break;
   }
  goto ret0;

 L11900: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16QImode)
    goto L58681;
  goto ret0;

 L58681: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12385;
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L11901;
    }
  goto ret0;

 L12385: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L12386;
    }
  goto ret0;

 L12386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12387;
  goto ret0;

 L12387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L12388;
    }
  goto ret0;

 L12388: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1465 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1141;  /* avx512vl_storedquv16qi_mask */
    }
  goto ret0;

 L11901: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11902;
  goto ret0;

 L11902: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L11903;
    }
  goto ret0;

 L11903: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1037 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1067;  /* avx512vl_storev16qi_mask */
    }
  goto ret0;

 L58679: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12273;
  goto ret0;

 L12273: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L12274;
    }
  goto ret0;

 L12274: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 1123;  /* sse2_storedquv16qi */
    }
  goto ret0;

 L26153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2QImode:
      goto L58682;
    case V4QImode:
      goto L58686;
    case V8QImode:
      goto L58690;
    default:
      break;
    }
  goto ret0;

 L58682: ATTRIBUTE_UNUSED_LABEL
  return recog_29 (x0, insn, pnum_clobbers);

 L58686: ATTRIBUTE_UNUSED_LABEL
  return recog_31 (x0, insn, pnum_clobbers);

 L58690: ATTRIBUTE_UNUSED_LABEL
  return recog_33 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_35 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L58809;
    case PLUS:
      goto L28314;
    case MINUS:
      goto L28329;
    case SS_PLUS:
      goto L28980;
    case US_PLUS:
      goto L28995;
    case SS_MINUS:
      goto L29010;
    case US_MINUS:
      goto L29025;
    case MULT:
      goto L29160;
    case TRUNCATE:
      goto L29209;
    case ASHIFTRT:
      goto L29941;
    case ASHIFT:
      goto L30001;
    case LSHIFTRT:
      goto L30016;
    case SMAX:
      goto L31279;
    case SMIN:
      goto L31294;
    case UMAX:
      goto L31309;
    case UMIN:
      goto L31324;
    case AND:
      goto L32121;
    case IOR:
      goto L32599;
    case XOR:
      goto L32614;
    case VEC_CONCAT:
      goto L33294;
    case VEC_SELECT:
      goto L33995;
    case ABS:
      goto L37946;
    case SIGN_EXTEND:
      goto L38284;
    case ZERO_EXTEND:
      goto L38297;
    case VEC_DUPLICATE:
      goto L41762;
    case REG:
    case SUBREG:
    case MEM:
      goto L58774;
    default:
      goto L58775;
   }
 L58774: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L11663;
    }
 L58775: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L11789;
    }
  goto ret0;

 L58809: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L58818;
    case 2:
      goto L58819;
    case 3:
      goto L58823;
    default:
      break;
    }
  goto ret0;

 L58818: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 104)
    goto L12157;
  goto ret0;

 L12157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L12158;
    }
  goto ret0;

 L12158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L12159;
    }
  goto ret0;

 L12159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12160;
    }
  goto ret0;

 L12160: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1105;  /* *avx512bw_loaddquv32hi_mask */
    }
  goto ret0;

 L58819: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 186LL:
      goto L35259;
    case 185LL:
      goto L35350;
    case 183LL:
      goto L37346;
    case 143LL:
      goto L41342;
    default:
      break;
    }
  goto ret0;

 L35259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L35260;
    }
  goto ret0;

 L35260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L35261;
    }
  goto ret0;

 L35261: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L35262;
    }
  goto ret0;

 L35262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L35263;
    }
  goto ret0;

 L35263: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12259 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3424;  /* avx512bw_pshuflwv32hi_mask */
    }
  goto ret0;

 L35350: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L35351;
    }
  goto ret0;

 L35351: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L35352;
    }
  goto ret0;

 L35352: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L35353;
    }
  goto ret0;

 L35353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L35354;
    }
  goto ret0;

 L35354: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12435 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3430;  /* avx512bw_pshufhwv32hi_mask */
    }
  goto ret0;

 L37346: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L37347;
    }
  goto ret0;

 L37347: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L37348;
    }
  goto ret0;

 L37348: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L37349;
    }
  goto ret0;

 L37349: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L37350;
    }
  goto ret0;

 L37350: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 13511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3505;  /* avx512bw_pmaddubsw512v32hi_mask */
    }
  goto ret0;

 L41342: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L41343;
    }
  goto ret0;

 L41343: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L41344;
    }
  goto ret0;

 L41344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L41345;
    }
  goto ret0;

 L41345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L41346;
    }
  goto ret0;

 L41346: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16542 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
    {
      return 3910;  /* avx512bw_permvarv32hi_mask */
    }
  goto ret0;

 L58823: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 147LL:
      goto L42959;
    case 149LL:
      goto L43139;
    case 148LL:
      goto L43445;
    case 182LL:
      goto L51247;
    default:
      break;
    }
  goto ret0;

 L42959: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L42960;
    }
  goto ret0;

 L42960: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L42961;
    }
  goto ret0;

 L42961: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[3] = x3;
      goto L42962;
    }
  goto ret0;

 L42962: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V32HImode))
    {
      operands[4] = x2;
      goto L42963;
    }
  goto ret0;

 L42963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L42964;
    }
  goto ret0;

 L42964: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4122;  /* avx512bw_vpermi2varv32hi3_maskz_1 */
    }
  goto ret0;

 L43139: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L43140;
    }
  goto ret0;

 L43140: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L43141;
    }
  goto ret0;

 L43141: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[3] = x3;
      goto L43142;
    }
  goto ret0;

 L43142: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43143;
  goto ret0;

 L43143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L43144;
    }
  goto ret0;

 L43144: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4140;  /* avx512bw_vpermi2varv32hi3_mask */
    }
  goto ret0;

 L43445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L43446;
    }
  goto ret0;

 L43446: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L43447;
    }
  goto ret0;

 L43447: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[3] = x3;
      goto L43448;
    }
  goto ret0;

 L43448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V32HImode))
    {
      operands[4] = x2;
      goto L43449;
    }
 L43628: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43629;
  goto ret0;

 L43449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L43450;
    }
  x2 = XEXP (x1, 1);
  goto L43628;

 L43450: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17307 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4176;  /* avx512bw_vpermt2varv32hi3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43628;

 L43629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L43630;
    }
  goto ret0;

 L43630: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4194;  /* avx512bw_vpermt2varv32hi3_mask */
    }
  goto ret0;

 L51247: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L51248;
    }
  goto ret0;

 L51248: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L51249;
    }
  goto ret0;

 L51249: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51250;
    }
  goto ret0;

 L51250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[4] = x2;
      goto L51251;
    }
  goto ret0;

 L51251: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L51252;
    }
  goto ret0;

 L51252: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18498 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 4648;  /* avx512bw_dbpsadbwv32hi_mask */
    }
  goto ret0;

 L28314: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L28315;
    }
  goto ret0;

 L28315: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L28316;
    }
  goto ret0;

 L28316: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L28317;
    }
  goto ret0;

 L28317: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28318;
    }
  goto ret0;

 L28318: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V32HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2702;  /* *addv32hi3 */
    }
 L28744: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V32HImode, operands)))
    {
      return 2755;  /* *addv32hi3_mask */
    }
  goto ret0;

 L28329: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L28330;
    }
  goto ret0;

 L28330: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L28331;
    }
  goto ret0;

 L28331: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L28332;
    }
  goto ret0;

 L28332: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28333;
    }
  goto ret0;

 L28333: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V32HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2704;  /* *subv32hi3 */
    }
 L28753: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (MINUS, V32HImode, operands)))
    {
      return 2756;  /* *subv32hi3_mask */
    }
  goto ret0;

 L28980: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L28981;
    }
  goto ret0;

 L28981: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L28982;
    }
  goto ret0;

 L28982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L28983;
    }
  goto ret0;

 L28983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28984;
    }
  goto ret0;

 L28984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_PLUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2786;  /* *avx512bw_ssaddv32hi3_mask */
    }
  goto ret0;

 L28995: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L28996;
    }
  goto ret0;

 L28996: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L28997;
    }
  goto ret0;

 L28997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L28998;
    }
  goto ret0;

 L28998: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L28999;
    }
  goto ret0;

 L28999: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_PLUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2788;  /* *avx512bw_usaddv32hi3_mask */
    }
  goto ret0;

 L29010: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L29011;
    }
  goto ret0;

 L29011: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L29012;
    }
  goto ret0;

 L29012: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L29013;
    }
  goto ret0;

 L29013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L29014;
    }
  goto ret0;

 L29014: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_MINUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2790;  /* *avx512bw_sssubv32hi3_mask */
    }
  goto ret0;

 L29025: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L29026;
    }
  goto ret0;

 L29026: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L29027;
    }
  goto ret0;

 L29027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L29028;
    }
  goto ret0;

 L29028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L29029;
    }
  goto ret0;

 L29029: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_MINUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2792;  /* *avx512bw_ussubv32hi3_mask */
    }
  goto ret0;

 L29160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L29161;
    }
  goto ret0;

 L29161: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L29162;
    }
  goto ret0;

 L29162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L29163;
    }
  goto ret0;

 L29163: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L29164;
    }
  goto ret0;

 L29164: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V32HImode, operands)
   && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2810;  /* *mulv32hi3_mask */
    }
  goto ret0;

 L29209: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32SImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L29210;
  goto ret0;

 L29210: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V32SImode)
    goto L58827;
  goto ret0;

 L58827: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case MULT:
      goto L29211;
    case PLUS:
      goto L35649;
    default:
     break;
   }
  goto ret0;

 L29211: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V32SImode)
    goto L58829;
  goto ret0;

 L58829: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case SIGN_EXTEND:
      goto L29212;
    case ZERO_EXTEND:
      goto L29236;
    default:
     break;
   }
  goto ret0;

 L29212: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32HImode))
    {
      operands[1] = x6;
      goto L29213;
    }
  goto ret0;

 L29213: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V32SImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L29214;
  goto ret0;

 L29214: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32HImode))
    {
      operands[2] = x6;
      goto L29215;
    }
  goto ret0;

 L29215: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L29216;
  goto ret0;

 L29216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L29217;
    }
  goto ret0;

 L29217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L29218;
    }
  goto ret0;

 L29218: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V32HImode, operands)
   && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2816;  /* *smulv32hi3_highpart_mask */
    }
  goto ret0;

 L29236: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32HImode))
    {
      operands[1] = x6;
      goto L29237;
    }
  goto ret0;

 L29237: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V32SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L29238;
  goto ret0;

 L29238: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32HImode))
    {
      operands[2] = x6;
      goto L29239;
    }
  goto ret0;

 L29239: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L29240;
  goto ret0;

 L29240: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L29241;
    }
  goto ret0;

 L29241: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L29242;
    }
  goto ret0;

 L29242: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V32HImode, operands)
   && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2818;  /* *umulv32hi3_highpart_mask */
    }
  goto ret0;

 L35649: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V32SImode)
    goto L58831;
  goto ret0;

 L58831: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case PLUS:
      goto L35650;
    case LSHIFTRT:
      goto L37404;
    default:
     break;
   }
  goto ret0;

 L35650: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V32SImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35651;
  goto ret0;

 L35651: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V32HImode))
    {
      operands[1] = x7;
      goto L35652;
    }
  goto ret0;

 L35652: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V32SImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35653;
  goto ret0;

 L35653: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V32HImode))
    {
      operands[2] = x7;
      goto L35654;
    }
  goto ret0;

 L35654: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V32HImode))
    {
      operands[5] = x5;
      goto L35655;
    }
  goto ret0;

 L35655: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35656;
  goto ret0;

 L35656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L35657;
    }
  goto ret0;

 L35657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L35658;
    }
  goto ret0;

 L35658: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (PLUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3459;  /* *avx512bw_uavgv32hi3_mask */
    }
  goto ret0;

 L37404: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V32SImode
      && GET_CODE (x6) == MULT)
    goto L37405;
  goto ret0;

 L37405: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (GET_MODE (x7) == V32SImode
      && GET_CODE (x7) == SIGN_EXTEND)
    goto L37406;
  goto ret0;

 L37406: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, V32HImode))
    {
      operands[1] = x8;
      goto L37407;
    }
  goto ret0;

 L37407: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_MODE (x7) == V32SImode
      && GET_CODE (x7) == SIGN_EXTEND)
    goto L37408;
  goto ret0;

 L37408: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, V32HImode))
    {
      operands[2] = x8;
      goto L37409;
    }
  goto ret0;

 L37409: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37410;
  goto ret0;

 L37410: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V32HImode
      && GET_CODE (x5) == CONST_VECTOR
      && XVECLEN (x5, 0) == 32)
    goto L37411;
 L37564: ATTRIBUTE_UNUSED_LABEL
  if (const1_operand (x5, V32HImode))
    {
      operands[3] = x5;
      goto L37565;
    }
  goto ret0;

 L37411: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37412;
  goto L37564;

 L37412: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37413;
  goto L37564;

 L37413: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37414;
  goto L37564;

 L37414: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37415;
  goto L37564;

 L37415: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37416;
  goto L37564;

 L37416: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37417;
  goto L37564;

 L37417: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37418;
  goto L37564;

 L37418: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37419;
  goto L37564;

 L37419: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 8);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37420;
  goto L37564;

 L37420: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 9);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37421;
  goto L37564;

 L37421: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 10);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37422;
  goto L37564;

 L37422: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 11);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37423;
  goto L37564;

 L37423: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 12);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37424;
  goto L37564;

 L37424: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 13);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37425;
  goto L37564;

 L37425: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 14);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37426;
  goto L37564;

 L37426: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 15);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37427;
  goto L37564;

 L37427: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 16);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37428;
  goto L37564;

 L37428: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 17);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37429;
  goto L37564;

 L37429: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 18);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37430;
  goto L37564;

 L37430: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 19);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37431;
  goto L37564;

 L37431: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 20);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37432;
  goto L37564;

 L37432: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 21);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37433;
  goto L37564;

 L37433: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 22);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37434;
  goto L37564;

 L37434: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 23);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37435;
  goto L37564;

 L37435: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 24);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37436;
  goto L37564;

 L37436: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 25);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37437;
  goto L37564;

 L37437: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 26);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37438;
  goto L37564;

 L37438: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 27);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37439;
  goto L37564;

 L37439: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 28);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37440;
  goto L37564;

 L37440: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 29);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37441;
  goto L37564;

 L37441: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 30);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37442;
  goto L37564;

 L37442: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 31);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37443;
  goto L37564;

 L37443: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37444;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L37564;

 L37444: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L37445;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L37564;

 L37445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L37446;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L37564;

 L37446: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 13546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3507;  /* avx512bw_umulhrswv32hi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  goto L37564;

 L37565: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37566;
  goto ret0;

 L37566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[4] = x2;
      goto L37567;
    }
  goto ret0;

 L37567: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L37568;
    }
  goto ret0;

 L37568: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13686 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (MULT, V32HImode, operands)) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3511;  /* *avx512bw_pmulhrswv32hi3_mask */
    }
  goto ret0;

 L29941: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32HImode)
    goto L58833;
  goto ret0;

 L58833: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L29942;
    }
 L58834: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L44237;
    }
  goto ret0;

 L29942: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29943;
    }
  x3 = XEXP (x2, 0);
  goto L58834;

 L29943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L29944;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58834;

 L29944: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L29945;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58834;

 L29945: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9948 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 401 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2874;  /* ashrv32hi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58834;

 L44237: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L44238;
    }
  goto ret0;

 L44238: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L44239;
    }
  goto ret0;

 L44239: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L44240;
    }
  goto ret0;

 L44240: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 4263;  /* avx512bw_ashrvv32hi_mask */
    }
  goto ret0;

 L30001: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L44492;
    }
  goto ret0;

 L44492: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L44493;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30003;
    }
  goto ret0;

 L44493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L44494;
    }
  goto ret0;

 L44494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L44495;
    }
  goto ret0;

 L44495: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 4297;  /* avx512bw_ashlvv32hi_mask */
    }
  goto ret0;

 L30003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L30004;
    }
  goto ret0;

 L30004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L30005;
    }
  goto ret0;

 L30005: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2882;  /* ashlv32hi3_mask */
    }
  goto ret0;

 L30016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L44507;
    }
  goto ret0;

 L44507: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L44508;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30018;
    }
  goto ret0;

 L44508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L44509;
    }
  goto ret0;

 L44509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L44510;
    }
  goto ret0;

 L44510: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 4299;  /* avx512bw_lshrvv32hi_mask */
    }
  goto ret0;

 L30018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L30019;
    }
  goto ret0;

 L30019: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L30020;
    }
  goto ret0;

 L30020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2884;  /* lshrv32hi3_mask */
    }
  goto ret0;

 L31279: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L31280;
    }
  goto ret0;

 L31280: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L31281;
    }
  goto ret0;

 L31281: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L31282;
    }
  goto ret0;

 L31282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31283;
    }
  goto ret0;

 L31283: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3056;  /* smaxv32hi3_mask */
    }
  goto ret0;

 L31294: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L31295;
    }
  goto ret0;

 L31295: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L31296;
    }
  goto ret0;

 L31296: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L31297;
    }
  goto ret0;

 L31297: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31298;
    }
  goto ret0;

 L31298: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3058;  /* sminv32hi3_mask */
    }
  goto ret0;

 L31309: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L31310;
    }
  goto ret0;

 L31310: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L31311;
    }
  goto ret0;

 L31311: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L31312;
    }
  goto ret0;

 L31312: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31313;
    }
  goto ret0;

 L31313: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3060;  /* umaxv32hi3_mask */
    }
  goto ret0;

 L31324: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L31325;
    }
  goto ret0;

 L31325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L31326;
    }
  goto ret0;

 L31326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L31327;
    }
  goto ret0;

 L31327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L31328;
    }
  goto ret0;

 L31328: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3062;  /* uminv32hi3_mask */
    }
  goto ret0;

 L32121: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32HImode)
    goto L58835;
  goto ret0;

 L58835: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32122;
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L32585;
    }
  goto ret0;

 L32122: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V32HImode))
    {
      operands[1] = x4;
      goto L32123;
    }
  goto ret0;

 L32123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L32124;
    }
  goto ret0;

 L32124: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L32125;
    }
  goto ret0;

 L32125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32126;
    }
  goto ret0;

 L32126: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3174;  /* *andnotv32hi3 */
    }
 L32328: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10896 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3196;  /* *andnotv32hi3_mask */
    }
  goto ret0;

 L32585: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L32586;
    }
  goto ret0;

 L32586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L32587;
    }
  goto ret0;

 L32587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32588;
    }
  goto ret0;

 L32588: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V32HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3230;  /* andv32hi3_mask */
    }
  goto ret0;

 L32599: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L32600;
    }
  goto ret0;

 L32600: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L32601;
    }
  goto ret0;

 L32601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L32602;
    }
  goto ret0;

 L32602: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32603;
    }
  goto ret0;

 L32603: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V32HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3232;  /* iorv32hi3_mask */
    }
  goto ret0;

 L32614: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L32615;
    }
  goto ret0;

 L32615: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L32616;
    }
  goto ret0;

 L32616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L32617;
    }
  goto ret0;

 L32617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L32618;
    }
  goto ret0;

 L32618: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V32HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3234;  /* xorv32hi3_mask */
    }
  goto ret0;

 L33294: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode)
    goto L58837;
  goto ret0;

 L58837: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L33295;
    case US_TRUNCATE:
      goto L38158;
    default:
     break;
   }
  goto ret0;

 L33295: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L33296;
    }
  goto ret0;

 L33296: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == SS_TRUNCATE)
    goto L33297;
  goto ret0;

 L33297: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L33298;
    }
  goto ret0;

 L33298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L33299;
    }
  goto ret0;

 L33299: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L33300;
    }
  goto ret0;

 L33300: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11097 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3326;  /* avx512bw_packssdw_mask */
    }
  goto ret0;

 L38158: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L38159;
    }
  goto ret0;

 L38159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == US_TRUNCATE)
    goto L38160;
  goto ret0;

 L38160: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L38161;
    }
  goto ret0;

 L38161: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L38162;
    }
  goto ret0;

 L38162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L38163;
    }
  goto ret0;

 L38163: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 14112 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 3593;  /* avx512bw_packusdw_mask */
    }
  goto ret0;

 L33995: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V64HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L33996;
  goto ret0;

 L33996: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V32HImode))
    {
      operands[1] = x4;
      goto L33997;
    }
  goto ret0;

 L33997: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V32HImode))
    {
      operands[2] = x4;
      goto L33998;
    }
  goto ret0;

 L33998: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 32)
    goto L33999;
  goto ret0;

 L33999: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58839;
  goto ret0;

 L58839: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 4LL:
        goto L34000;
      case 0LL:
        goto L34166;
      default:
        break;
      }
  goto ret0;

 L34000: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L34001;
  goto ret0;

 L34001: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34002;
  goto ret0;

 L34002: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L34003;
  goto ret0;

 L34003: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34004;
  goto ret0;

 L34004: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L34005;
  goto ret0;

 L34005: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34006;
  goto ret0;

 L34006: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L34007;
  goto ret0;

 L34007: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34008;
  goto ret0;

 L34008: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L34009;
  goto ret0;

 L34009: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34010;
  goto ret0;

 L34010: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L34011;
  goto ret0;

 L34011: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34012;
  goto ret0;

 L34012: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L34013;
  goto ret0;

 L34013: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34014;
  goto ret0;

 L34014: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L34015;
  goto ret0;

 L34015: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 16);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L34016;
  goto ret0;

 L34016: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 17);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L34017;
  goto ret0;

 L34017: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 18);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L34018;
  goto ret0;

 L34018: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 19);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L34019;
  goto ret0;

 L34019: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 20);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L34020;
  goto ret0;

 L34020: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 21);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L34021;
  goto ret0;

 L34021: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 22);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L34022;
  goto ret0;

 L34022: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 23);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (55)])
    goto L34023;
  goto ret0;

 L34023: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 24);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L34024;
  goto ret0;

 L34024: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 25);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L34025;
  goto ret0;

 L34025: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 26);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L34026;
  goto ret0;

 L34026: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 27);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L34027;
  goto ret0;

 L34027: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 28);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L34028;
  goto ret0;

 L34028: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 29);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L34029;
  goto ret0;

 L34029: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 30);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L34030;
  goto ret0;

 L34030: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 31);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (63)])
    goto L34031;
  goto ret0;

 L34031: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L34032;
    }
  goto ret0;

 L34032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L34033;
    }
  goto ret0;

 L34033: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11338 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3350;  /* avx512bw_interleave_highv32hi_mask */
    }
  goto ret0;

 L34166: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L34167;
  goto ret0;

 L34167: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34168;
  goto ret0;

 L34168: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L34169;
  goto ret0;

 L34169: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34170;
  goto ret0;

 L34170: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L34171;
  goto ret0;

 L34171: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34172;
  goto ret0;

 L34172: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L34173;
  goto ret0;

 L34173: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34174;
  goto ret0;

 L34174: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L34175;
  goto ret0;

 L34175: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34176;
  goto ret0;

 L34176: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L34177;
  goto ret0;

 L34177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34178;
  goto ret0;

 L34178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L34179;
  goto ret0;

 L34179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34180;
  goto ret0;

 L34180: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L34181;
  goto ret0;

 L34181: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 16);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L34182;
  goto ret0;

 L34182: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 17);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L34183;
  goto ret0;

 L34183: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 18);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L34184;
  goto ret0;

 L34184: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 19);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L34185;
  goto ret0;

 L34185: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 20);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L34186;
  goto ret0;

 L34186: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 21);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L34187;
  goto ret0;

 L34187: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 22);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L34188;
  goto ret0;

 L34188: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 23);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L34189;
  goto ret0;

 L34189: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 24);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L34190;
  goto ret0;

 L34190: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 25);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L34191;
  goto ret0;

 L34191: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 26);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L34192;
  goto ret0;

 L34192: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 27);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L34193;
  goto ret0;

 L34193: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 28);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L34194;
  goto ret0;

 L34194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 29);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L34195;
  goto ret0;

 L34195: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 30);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L34196;
  goto ret0;

 L34196: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 31);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (59)])
    goto L34197;
  goto ret0;

 L34197: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L34198;
    }
  goto ret0;

 L34198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L34199;
    }
  goto ret0;

 L34199: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11406 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3356;  /* avx512bw_interleave_lowv32hi_mask */
    }
  goto ret0;

 L37946: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L37947;
    }
  goto ret0;

 L37947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L37948;
    }
  goto ret0;

 L37948: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L37949;
    }
  goto ret0;

 L37949: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3561;  /* absv32hi2_mask */
    }
  goto ret0;

 L38284: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L38285;
    }
  goto ret0;

 L38285: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L38286;
    }
  goto ret0;

 L38286: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38287;
    }
  goto ret0;

 L38287: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14231 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3610;  /* avx512bw_sign_extendv32qiv32hi2_mask */
    }
  goto ret0;

 L38297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L38298;
    }
  goto ret0;

 L38298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L38299;
    }
  goto ret0;

 L38299: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38300;
    }
  goto ret0;

 L38300: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14231 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3612;  /* avx512bw_zero_extendv32qiv32hi2_mask */
    }
  goto ret0;

 L41762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode)
    goto L58841;
  goto ret0;

 L58841: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41763;
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L41906;
    }
  goto ret0;

 L41763: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L41764;
    }
  goto ret0;

 L41764: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41765;
  goto ret0;

 L41765: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41766;
  goto ret0;

 L41766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L41767;
    }
  goto ret0;

 L41767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L41768;
    }
  goto ret0;

 L41768: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3956;  /* avx512bw_vec_dupv32hi_mask */
    }
  goto ret0;

 L41906: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L41907;
    }
  goto ret0;

 L41907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L41908;
    }
  goto ret0;

 L41908: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3976;  /* avx512bw_vec_dup_gprv32hi_mask */
    }
  goto ret0;

 L11663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L11664;
    }
  x2 = XEXP (x1, 0);
  goto L58775;

 L11664: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L11665;
    }
  x2 = XEXP (x1, 0);
  goto L58775;

 L11665: ATTRIBUTE_UNUSED_LABEL
  if (
#line 962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1033;  /* avx512bw_loadv32hi_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58775;

 L11789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L11790;
    }
  goto ret0;

 L11790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L11791;
    }
  goto ret0;

 L11791: ATTRIBUTE_UNUSED_LABEL
  if (
#line 987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1051;  /* avx512bw_blendmv32hi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_36 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11662;
    case UNSPEC:
      goto L58766;
    case PLUS:
      goto L28307;
    case MINUS:
      goto L28322;
    case SS_PLUS:
      goto L28973;
    case US_PLUS:
      goto L28988;
    case SS_MINUS:
      goto L29003;
    case US_MINUS:
      goto L29018;
    case MULT:
      goto L29153;
    case TRUNCATE:
      goto L29198;
    case ASHIFTRT:
      goto L29934;
    case ASHIFT:
      goto L29994;
    case LSHIFTRT:
      goto L30009;
    case SMAX:
      goto L31272;
    case SMIN:
      goto L31287;
    case UMAX:
      goto L31302;
    case UMIN:
      goto L31317;
    case AND:
      goto L32113;
    case IOR:
      goto L32592;
    case XOR:
      goto L32607;
    case VEC_CONCAT:
      goto L33285;
    case VEC_SELECT:
      goto L33955;
    case ABS:
      goto L37828;
    case SIGN_EXTEND:
      goto L38278;
    case ZERO_EXTEND:
      goto L38291;
    case VEC_DUPLICATE:
      goto L41063;
    default:
     break;
   }
  goto ret0;

 L11662: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32HImode)
    goto L58776;
 L21998: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L21999;
    }
  goto ret0;

 L58776: ATTRIBUTE_UNUSED_LABEL
  tem = recog_35 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L21998;

 L21999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L22000;
    }
  goto ret0;

 L22000: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L22001;
    }
  goto ret0;

 L22001: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2192;  /* *avx512bw_cvtmask2wv32hi */
    }
  goto ret0;

 L58766: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L58843;
    case 2:
      goto L58844;
    case 3:
      goto L58848;
    default:
      break;
    }
  goto ret0;

 L58843: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 104)
    goto L12151;
  goto ret0;

 L12151: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L12152;
    }
  goto ret0;

 L12152: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1104;  /* *avx512bw_loaddquv32hi */
    }
  goto ret0;

 L58844: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 186LL:
      goto L35252;
    case 185LL:
      goto L35343;
    case 183LL:
      goto L37339;
    case 143LL:
      goto L41335;
    default:
      break;
    }
  goto ret0;

 L35252: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L35253;
    }
  goto ret0;

 L35253: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L35254;
    }
  goto ret0;

 L35254: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12259 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3423;  /* *avx512bw_pshuflwv32hi */
    }
  goto ret0;

 L35343: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L35344;
    }
  goto ret0;

 L35344: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L35345;
    }
  goto ret0;

 L35345: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12435 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3429;  /* *avx512bw_pshufhwv32hi */
    }
  goto ret0;

 L37339: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L37340;
    }
  goto ret0;

 L37340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L37341;
    }
  goto ret0;

 L37341: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3504;  /* avx512bw_pmaddubsw512v32hi */
    }
  goto ret0;

 L41335: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L41336;
    }
  goto ret0;

 L41336: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L41337;
    }
  goto ret0;

 L41337: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16542 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && 1))
    {
      return 3909;  /* avx512bw_permvarv32hi */
    }
  goto ret0;

 L58848: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 147LL:
      goto L42951;
    case 148LL:
      goto L43437;
    case 182LL:
      goto L51239;
    default:
      break;
    }
  goto ret0;

 L42951: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L42952;
    }
  goto ret0;

 L42952: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L42953;
    }
  goto ret0;

 L42953: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L42954;
    }
  goto ret0;

 L42954: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4121;  /* avx512bw_vpermi2varv32hi3 */
    }
  goto ret0;

 L43437: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L43438;
    }
  goto ret0;

 L43438: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L43439;
    }
  goto ret0;

 L43439: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[3] = x2;
      goto L43440;
    }
  goto ret0;

 L43440: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17307 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4175;  /* avx512bw_vpermt2varv32hi3 */
    }
  goto ret0;

 L51239: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L51240;
    }
  goto ret0;

 L51240: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L51241;
    }
  goto ret0;

 L51241: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51242;
    }
  goto ret0;

 L51242: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18498 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4647;  /* *avx512bw_dbpsadbwv32hi */
    }
  goto ret0;

 L28307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L28308;
    }
  goto ret0;

 L28308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L28309;
    }
  goto ret0;

 L28309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V32HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2701;  /* *addv32hi3 */
    }
  goto ret0;

 L28322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L28323;
    }
  goto ret0;

 L28323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L28324;
    }
  goto ret0;

 L28324: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V32HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2703;  /* *subv32hi3 */
    }
  goto ret0;

 L28973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L28974;
    }
  goto ret0;

 L28974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L28975;
    }
  goto ret0;

 L28975: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_PLUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2785;  /* *avx512bw_ssaddv32hi3 */
    }
  goto ret0;

 L28988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L28989;
    }
  goto ret0;

 L28989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L28990;
    }
  goto ret0;

 L28990: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_PLUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2787;  /* *avx512bw_usaddv32hi3 */
    }
  goto ret0;

 L29003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L29004;
    }
  goto ret0;

 L29004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L29005;
    }
  goto ret0;

 L29005: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_MINUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2789;  /* *avx512bw_sssubv32hi3 */
    }
  goto ret0;

 L29018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L29019;
    }
  goto ret0;

 L29019: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L29020;
    }
  goto ret0;

 L29020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_MINUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2791;  /* *avx512bw_ussubv32hi3 */
    }
  goto ret0;

 L29153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L29154;
    }
  goto ret0;

 L29154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L29155;
    }
  goto ret0;

 L29155: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V32HImode, operands)
   && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2809;  /* *mulv32hi3 */
    }
  goto ret0;

 L29198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32SImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L29199;
  goto ret0;

 L29199: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V32SImode)
    goto L58851;
  goto ret0;

 L58851: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case MULT:
      goto L29200;
    case PLUS:
      goto L35636;
    default:
     break;
   }
  goto ret0;

 L29200: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V32SImode)
    goto L58853;
  goto ret0;

 L58853: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L29201;
    case ZERO_EXTEND:
      goto L29225;
    default:
     break;
   }
  goto ret0;

 L29201: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V32HImode))
    {
      operands[1] = x5;
      goto L29202;
    }
  goto ret0;

 L29202: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V32SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L29203;
  goto ret0;

 L29203: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V32HImode))
    {
      operands[2] = x5;
      goto L29204;
    }
  goto ret0;

 L29204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V32HImode, operands)
   && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2815;  /* *smulv32hi3_highpart */
    }
  goto ret0;

 L29225: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V32HImode))
    {
      operands[1] = x5;
      goto L29226;
    }
  goto ret0;

 L29226: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V32SImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L29227;
  goto ret0;

 L29227: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V32HImode))
    {
      operands[2] = x5;
      goto L29228;
    }
  goto ret0;

 L29228: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V32HImode, operands)
   && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2817;  /* *umulv32hi3_highpart */
    }
  goto ret0;

 L35636: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V32SImode)
    goto L58855;
  goto ret0;

 L58855: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case PLUS:
      goto L35637;
    case LSHIFTRT:
      goto L37357;
    default:
     break;
   }
  goto ret0;

 L35637: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V32SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35638;
  goto ret0;

 L35638: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32HImode))
    {
      operands[1] = x6;
      goto L35639;
    }
  goto ret0;

 L35639: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V32SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35640;
  goto ret0;

 L35640: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V32HImode))
    {
      operands[2] = x6;
      goto L35641;
    }
  goto ret0;

 L35641: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V32HImode))
    {
      operands[3] = x4;
      goto L35642;
    }
  goto ret0;

 L35642: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (PLUS, V32HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3458;  /* *avx512bw_uavgv32hi3 */
    }
  goto ret0;

 L37357: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V32SImode
      && GET_CODE (x5) == MULT)
    goto L37358;
  goto ret0;

 L37358: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V32SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37359;
  goto ret0;

 L37359: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V32HImode))
    {
      operands[1] = x7;
      goto L37360;
    }
  goto ret0;

 L37360: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V32SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37361;
  goto ret0;

 L37361: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V32HImode))
    {
      operands[2] = x7;
      goto L37362;
    }
  goto ret0;

 L37362: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37363;
  goto ret0;

 L37363: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V32HImode
      && GET_CODE (x4) == CONST_VECTOR
      && XVECLEN (x4, 0) == 32)
    goto L37364;
 L37549: ATTRIBUTE_UNUSED_LABEL
  if (const1_operand (x4, V32HImode))
    {
      operands[3] = x4;
      goto L37550;
    }
  goto ret0;

 L37364: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37365;
  goto L37549;

 L37365: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37366;
  goto L37549;

 L37366: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37367;
  goto L37549;

 L37367: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37368;
  goto L37549;

 L37368: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37369;
  goto L37549;

 L37369: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37370;
  goto L37549;

 L37370: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37371;
  goto L37549;

 L37371: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37372;
  goto L37549;

 L37372: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 8);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37373;
  goto L37549;

 L37373: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 9);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37374;
  goto L37549;

 L37374: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 10);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37375;
  goto L37549;

 L37375: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 11);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37376;
  goto L37549;

 L37376: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 12);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37377;
  goto L37549;

 L37377: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 13);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37378;
  goto L37549;

 L37378: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 14);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37379;
  goto L37549;

 L37379: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 15);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37380;
  goto L37549;

 L37380: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 16);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37381;
  goto L37549;

 L37381: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 17);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37382;
  goto L37549;

 L37382: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 18);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37383;
  goto L37549;

 L37383: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 19);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37384;
  goto L37549;

 L37384: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 20);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37385;
  goto L37549;

 L37385: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 21);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37386;
  goto L37549;

 L37386: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 22);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37387;
  goto L37549;

 L37387: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 23);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37388;
  goto L37549;

 L37388: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 24);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37389;
  goto L37549;

 L37389: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 25);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37390;
  goto L37549;

 L37390: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 26);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37391;
  goto L37549;

 L37391: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 27);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37392;
  goto L37549;

 L37392: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 28);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37393;
  goto L37549;

 L37393: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 29);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37394;
  goto L37549;

 L37394: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 30);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37395;
  goto L37549;

 L37395: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 31);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37396;
  goto L37549;

 L37396: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3506;  /* avx512bw_umulhrswv32hi3 */
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L37549;

 L37550: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 13686 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && 1 && 1
   && ix86_binary_operator_ok (MULT, V32HImode, operands)) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3510;  /* *avx512bw_pmulhrswv32hi3 */
    }
  goto ret0;

 L29934: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32HImode)
    goto L58857;
  goto ret0;

 L58857: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L29935;
    }
 L58858: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L44230;
    }
  goto ret0;

 L29935: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29936;
    }
  x2 = XEXP (x1, 0);
  goto L58858;

 L29936: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9948 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 401 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2873;  /* ashrv32hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58858;

 L44230: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L44231;
    }
  goto ret0;

 L44231: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4262;  /* avx512bw_ashrvv32hi */
    }
  goto ret0;

 L29994: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L44485;
    }
  goto ret0;

 L44485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L44486;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29996;
    }
  goto ret0;

 L44486: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4296;  /* avx512bw_ashlvv32hi */
    }
  goto ret0;

 L29996: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2881;  /* ashlv32hi3 */
    }
  goto ret0;

 L30009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L44500;
    }
  goto ret0;

 L44500: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L44501;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30011;
    }
  goto ret0;

 L44501: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 4298;  /* avx512bw_lshrvv32hi */
    }
  goto ret0;

 L30011: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2883;  /* lshrv32hi3 */
    }
  goto ret0;

 L31272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L31273;
    }
  goto ret0;

 L31273: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L31274;
    }
  goto ret0;

 L31274: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3055;  /* *smaxv32hi3 */
    }
  goto ret0;

 L31287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L31288;
    }
  goto ret0;

 L31288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L31289;
    }
  goto ret0;

 L31289: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3057;  /* *sminv32hi3 */
    }
  goto ret0;

 L31302: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L31303;
    }
  goto ret0;

 L31303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L31304;
    }
  goto ret0;

 L31304: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3059;  /* *umaxv32hi3 */
    }
  goto ret0;

 L31317: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L31318;
    }
  goto ret0;

 L31318: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L31319;
    }
  goto ret0;

 L31319: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3061;  /* *uminv32hi3 */
    }
  goto ret0;

 L32113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32HImode)
    goto L58859;
  goto ret0;

 L58859: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32114;
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L32578;
    }
  goto ret0;

 L32114: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L32115;
    }
  goto ret0;

 L32115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L32116;
    }
  goto ret0;

 L32116: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3173;  /* *andnotv32hi3 */
    }
  goto ret0;

 L32578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L32579;
    }
  goto ret0;

 L32579: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V32HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3229;  /* *andv32hi3 */
    }
  goto ret0;

 L32592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L32593;
    }
  goto ret0;

 L32593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L32594;
    }
  goto ret0;

 L32594: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V32HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3231;  /* *iorv32hi3 */
    }
  goto ret0;

 L32607: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L32608;
    }
  goto ret0;

 L32608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L32609;
    }
  goto ret0;

 L32609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V32HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3233;  /* *xorv32hi3 */
    }
  goto ret0;

 L33285: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L58861;
  goto ret0;

 L58861: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L33286;
    case US_TRUNCATE:
      goto L38149;
    case REG:
    case SUBREG:
      goto L58863;
    default:
      goto ret0;
   }
 L58863: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L44557;
    }
  goto ret0;

 L33286: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L33287;
    }
  goto ret0;

 L33287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16HImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L33288;
  goto ret0;

 L33288: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L33289;
    }
  goto ret0;

 L33289: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11097 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3325;  /* avx512bw_packssdw */
    }
  goto ret0;

 L38149: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L38150;
    }
  goto ret0;

 L38150: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16HImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L38151;
  goto ret0;

 L38151: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L38152;
    }
  goto ret0;

 L38152: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14112 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3592;  /* avx512bw_packusdw */
    }
  goto ret0;

 L44557: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L44558;
    }
  goto ret0;

 L44558: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 211 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4307;  /* avx_vec_concatv32hi */
    }
  goto ret0;

 L33955: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V64HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L33956;
  goto ret0;

 L33956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L33957;
    }
  goto ret0;

 L33957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L33958;
    }
  goto ret0;

 L33958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 32)
    goto L33959;
  goto ret0;

 L33959: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58864;
  goto ret0;

 L58864: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 4LL:
        goto L33960;
      case 0LL:
        goto L34126;
      default:
        break;
      }
  goto ret0;

 L33960: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (36)])
    goto L33961;
  goto ret0;

 L33961: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L33962;
  goto ret0;

 L33962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (37)])
    goto L33963;
  goto ret0;

 L33963: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L33964;
  goto ret0;

 L33964: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (38)])
    goto L33965;
  goto ret0;

 L33965: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L33966;
  goto ret0;

 L33966: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (39)])
    goto L33967;
  goto ret0;

 L33967: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L33968;
  goto ret0;

 L33968: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (44)])
    goto L33969;
  goto ret0;

 L33969: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L33970;
  goto ret0;

 L33970: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (45)])
    goto L33971;
  goto ret0;

 L33971: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L33972;
  goto ret0;

 L33972: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (46)])
    goto L33973;
  goto ret0;

 L33973: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L33974;
  goto ret0;

 L33974: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (47)])
    goto L33975;
  goto ret0;

 L33975: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L33976;
  goto ret0;

 L33976: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (52)])
    goto L33977;
  goto ret0;

 L33977: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L33978;
  goto ret0;

 L33978: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (53)])
    goto L33979;
  goto ret0;

 L33979: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L33980;
  goto ret0;

 L33980: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (54)])
    goto L33981;
  goto ret0;

 L33981: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L33982;
  goto ret0;

 L33982: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (55)])
    goto L33983;
  goto ret0;

 L33983: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L33984;
  goto ret0;

 L33984: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (60)])
    goto L33985;
  goto ret0;

 L33985: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L33986;
  goto ret0;

 L33986: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (61)])
    goto L33987;
  goto ret0;

 L33987: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L33988;
  goto ret0;

 L33988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (62)])
    goto L33989;
  goto ret0;

 L33989: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L33990;
  goto ret0;

 L33990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (63)]
      && 
#line 11338 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3349;  /* avx512bw_interleave_highv32hi */
    }
  goto ret0;

 L34126: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L34127;
  goto ret0;

 L34127: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34128;
  goto ret0;

 L34128: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (33)])
    goto L34129;
  goto ret0;

 L34129: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34130;
  goto ret0;

 L34130: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (34)])
    goto L34131;
  goto ret0;

 L34131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34132;
  goto ret0;

 L34132: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (35)])
    goto L34133;
  goto ret0;

 L34133: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34134;
  goto ret0;

 L34134: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (40)])
    goto L34135;
  goto ret0;

 L34135: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34136;
  goto ret0;

 L34136: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (41)])
    goto L34137;
  goto ret0;

 L34137: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34138;
  goto ret0;

 L34138: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (42)])
    goto L34139;
  goto ret0;

 L34139: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34140;
  goto ret0;

 L34140: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (43)])
    goto L34141;
  goto ret0;

 L34141: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L34142;
  goto ret0;

 L34142: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (48)])
    goto L34143;
  goto ret0;

 L34143: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L34144;
  goto ret0;

 L34144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (49)])
    goto L34145;
  goto ret0;

 L34145: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L34146;
  goto ret0;

 L34146: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (50)])
    goto L34147;
  goto ret0;

 L34147: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L34148;
  goto ret0;

 L34148: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (51)])
    goto L34149;
  goto ret0;

 L34149: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L34150;
  goto ret0;

 L34150: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (56)])
    goto L34151;
  goto ret0;

 L34151: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L34152;
  goto ret0;

 L34152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (57)])
    goto L34153;
  goto ret0;

 L34153: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L34154;
  goto ret0;

 L34154: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (58)])
    goto L34155;
  goto ret0;

 L34155: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L34156;
  goto ret0;

 L34156: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (59)]
      && 
#line 11406 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3355;  /* *avx512bw_interleave_lowv32hi */
    }
  goto ret0;

 L37828: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L37829;
    }
  goto ret0;

 L37829: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13853 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3543;  /* *absv32hi2 */
    }
  goto ret0;

 L38278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L38279;
    }
  goto ret0;

 L38279: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14231 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3609;  /* avx512bw_sign_extendv32qiv32hi2 */
    }
  goto ret0;

 L38291: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L38292;
    }
  goto ret0;

 L38292: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14231 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3611;  /* avx512bw_zero_extendv32qiv32hi2 */
    }
  goto ret0;

 L41063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L58866;
    case V32HImode:
      goto L58867;
    default:
      break;
    }
  goto ret0;

 L58866: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41064;
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L41900;
    }
  goto ret0;

 L41064: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L41065;
    }
  goto ret0;

 L41065: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41066;
  goto ret0;

 L41066: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58869;
  goto ret0;

 L58869: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L58871;
  goto ret0;

 L58871: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3872;  /* avx2_pbroadcastv32hi */
    }
 L58872: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3955;  /* avx512bw_vec_dupv32hi */
    }
  goto ret0;

 L41900: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3975;  /* *avx512bw_vec_dup_gprv32hi */
    }
  goto ret0;

 L58867: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41471;
  goto ret0;

 L41471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L41472;
    }
  goto ret0;

 L41472: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41473;
  goto ret0;

 L41473: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3923;  /* avx512bw_vec_dupv32hi_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_37 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L58967;
    case PLUS:
      goto L28344;
    case MINUS:
      goto L28359;
    case SS_PLUS:
      goto L29040;
    case US_PLUS:
      goto L29055;
    case SS_MINUS:
      goto L29070;
    case US_MINUS:
      goto L29085;
    case MULT:
      goto L29175;
    case TRUNCATE:
      goto L29257;
    case ASHIFTRT:
      goto L29866;
    case ASHIFT:
      goto L30031;
    case LSHIFTRT:
      goto L30046;
    case SMAX:
      goto L31339;
    case SMIN:
      goto L31354;
    case UMAX:
      goto L31369;
    case UMIN:
      goto L31384;
    case AND:
      goto L32138;
    case IOR:
      goto L32644;
    case XOR:
      goto L32659;
    case VEC_CONCAT:
      goto L33313;
    case VEC_SELECT:
      goto L34061;
    case ABS:
      goto L37954;
    case SIGN_EXTEND:
      goto L38258;
    case ZERO_EXTEND:
      goto L38271;
    case VEC_DUPLICATE:
      goto L41780;
    case REG:
    case SUBREG:
    case MEM:
      goto L58934;
    default:
      goto L58935;
   }
 L58934: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L11670;
    }
 L58935: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L11796;
    }
  goto ret0;

 L58967: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L58974;
    case 2:
      goto L58975;
    case 3:
      goto L58977;
    default:
      break;
    }
  goto ret0;

 L58974: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 104)
    goto L12183;
  goto ret0;

 L12183: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L12184;
    }
  goto ret0;

 L12184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L12185;
    }
  goto ret0;

 L12185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L12186;
    }
  goto ret0;

 L12186: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1109;  /* *avx512vl_loaddquv16hi_mask */
    }
  goto ret0;

 L58975: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 183LL:
      goto L37331;
    case 143LL:
      goto L41327;
    default:
      break;
    }
  goto ret0;

 L37331: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L37332;
    }
  goto ret0;

 L37332: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L37333;
    }
  goto ret0;

 L37333: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L37334;
    }
  goto ret0;

 L37334: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L37335;
    }
  goto ret0;

 L37335: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3503;  /* avx512bw_pmaddubsw512v16hi_mask */
    }
  goto ret0;

 L41327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L41328;
    }
  goto ret0;

 L41328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L41329;
    }
  goto ret0;

 L41329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L41330;
    }
  goto ret0;

 L41330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L41331;
    }
  goto ret0;

 L41331: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16542 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3908;  /* avx512vl_permvarv16hi_mask */
    }
  goto ret0;

 L58977: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 147LL:
      goto L42942;
    case 149LL:
      goto L43129;
    case 148LL:
      goto L43428;
    case 182LL:
      goto L51230;
    default:
      break;
    }
  goto ret0;

 L42942: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L42943;
    }
  goto ret0;

 L42943: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L42944;
    }
  goto ret0;

 L42944: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[3] = x3;
      goto L42945;
    }
  goto ret0;

 L42945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16HImode))
    {
      operands[4] = x2;
      goto L42946;
    }
  goto ret0;

 L42946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L42947;
    }
  goto ret0;

 L42947: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4120;  /* avx512vl_vpermi2varv16hi3_maskz_1 */
    }
  goto ret0;

 L43129: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L43130;
    }
  goto ret0;

 L43130: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L43131;
    }
  goto ret0;

 L43131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[3] = x3;
      goto L43132;
    }
  goto ret0;

 L43132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43133;
  goto ret0;

 L43133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L43134;
    }
  goto ret0;

 L43134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4139;  /* avx512vl_vpermi2varv16hi3_mask */
    }
  goto ret0;

 L43428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L43429;
    }
  goto ret0;

 L43429: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L43430;
    }
  goto ret0;

 L43430: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[3] = x3;
      goto L43431;
    }
  goto ret0;

 L43431: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16HImode))
    {
      operands[4] = x2;
      goto L43432;
    }
 L43618: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43619;
  goto ret0;

 L43432: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L43433;
    }
  x2 = XEXP (x1, 1);
  goto L43618;

 L43433: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17307 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4174;  /* avx512vl_vpermt2varv16hi3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43618;

 L43619: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L43620;
    }
  goto ret0;

 L43620: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4193;  /* avx512vl_vpermt2varv16hi3_mask */
    }
  goto ret0;

 L51230: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32QImode))
    {
      operands[1] = x3;
      goto L51231;
    }
  goto ret0;

 L51231: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32QImode))
    {
      operands[2] = x3;
      goto L51232;
    }
  goto ret0;

 L51232: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51233;
    }
  goto ret0;

 L51233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[4] = x2;
      goto L51234;
    }
  goto ret0;

 L51234: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L51235;
    }
  goto ret0;

 L51235: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18498 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4646;  /* avx512bw_dbpsadbwv16hi_mask */
    }
  goto ret0;

 L28344: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L28345;
    }
  goto ret0;

 L28345: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L28346;
    }
  goto ret0;

 L28346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L28347;
    }
  goto ret0;

 L28347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28348;
    }
  goto ret0;

 L28348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2706;  /* *addv16hi3 */
    }
 L28762: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2757;  /* *addv16hi3_mask */
    }
  goto ret0;

 L28359: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L28360;
    }
  goto ret0;

 L28360: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L28361;
    }
  goto ret0;

 L28361: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L28362;
    }
  goto ret0;

 L28362: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28363;
    }
  goto ret0;

 L28363: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V16HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2708;  /* *subv16hi3 */
    }
 L28771: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (MINUS, V16HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2758;  /* *subv16hi3_mask */
    }
  goto ret0;

 L29040: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29041;
    }
  goto ret0;

 L29041: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L29042;
    }
  goto ret0;

 L29042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29043;
    }
  goto ret0;

 L29043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29044;
    }
  goto ret0;

 L29044: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_PLUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2794;  /* *avx2_ssaddv16hi3_mask */
    }
  goto ret0;

 L29055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29056;
    }
  goto ret0;

 L29056: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L29057;
    }
  goto ret0;

 L29057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29058;
    }
  goto ret0;

 L29058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29059;
    }
  goto ret0;

 L29059: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_PLUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2796;  /* *avx2_usaddv16hi3_mask */
    }
  goto ret0;

 L29070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29071;
    }
  goto ret0;

 L29071: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L29072;
    }
  goto ret0;

 L29072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29073;
    }
  goto ret0;

 L29073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29074;
    }
  goto ret0;

 L29074: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_MINUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2798;  /* *avx2_sssubv16hi3_mask */
    }
  goto ret0;

 L29085: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29086;
    }
  goto ret0;

 L29086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L29087;
    }
  goto ret0;

 L29087: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29088;
    }
  goto ret0;

 L29088: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29089;
    }
  goto ret0;

 L29089: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2800;  /* *avx2_ussubv16hi3_mask */
    }
  goto ret0;

 L29175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29176;
    }
  goto ret0;

 L29176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L29177;
    }
  goto ret0;

 L29177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29178;
    }
  goto ret0;

 L29178: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29179;
    }
  goto ret0;

 L29179: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V16HImode, operands)
   && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2812;  /* *mulv16hi3_mask */
    }
  goto ret0;

 L29257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L29258;
  goto ret0;

 L29258: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SImode)
    goto L58981;
  goto ret0;

 L58981: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case MULT:
      goto L29259;
    case PLUS:
      goto L35677;
    default:
     break;
   }
  goto ret0;

 L29259: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SImode)
    goto L58983;
  goto ret0;

 L58983: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case SIGN_EXTEND:
      goto L29260;
    case ZERO_EXTEND:
      goto L29284;
    default:
     break;
   }
  goto ret0;

 L29260: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16HImode))
    {
      operands[1] = x6;
      goto L29261;
    }
  goto ret0;

 L29261: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V16SImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L29262;
  goto ret0;

 L29262: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16HImode))
    {
      operands[2] = x6;
      goto L29263;
    }
  goto ret0;

 L29263: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L29264;
  goto ret0;

 L29264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29265;
    }
  goto ret0;

 L29265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29266;
    }
  goto ret0;

 L29266: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V16HImode, operands)
   && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2820;  /* *smulv16hi3_highpart_mask */
    }
  goto ret0;

 L29284: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16HImode))
    {
      operands[1] = x6;
      goto L29285;
    }
  goto ret0;

 L29285: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V16SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L29286;
  goto ret0;

 L29286: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16HImode))
    {
      operands[2] = x6;
      goto L29287;
    }
  goto ret0;

 L29287: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L29288;
  goto ret0;

 L29288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29289;
    }
  goto ret0;

 L29289: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29290;
    }
  goto ret0;

 L29290: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V16HImode, operands)
   && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2822;  /* *umulv16hi3_highpart_mask */
    }
  goto ret0;

 L35677: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SImode)
    goto L58985;
  goto ret0;

 L58985: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case PLUS:
      goto L35678;
    case LSHIFTRT:
      goto L37590;
    default:
     break;
   }
  goto ret0;

 L35678: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V16SImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35679;
  goto ret0;

 L35679: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[1] = x7;
      goto L35680;
    }
  goto ret0;

 L35680: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V16SImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35681;
  goto ret0;

 L35681: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[2] = x7;
      goto L35682;
    }
  goto ret0;

 L35682: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V16HImode))
    {
      operands[5] = x5;
      goto L35683;
    }
  goto ret0;

 L35683: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35684;
  goto ret0;

 L35684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L35685;
    }
  goto ret0;

 L35685: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L35686;
    }
  goto ret0;

 L35686: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3461;  /* *avx2_uavgv16hi3_mask */
    }
  goto ret0;

 L37590: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V16SImode
      && GET_CODE (x6) == MULT)
    goto L37591;
  goto ret0;

 L37591: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (GET_MODE (x7) == V16SImode
      && GET_CODE (x7) == SIGN_EXTEND)
    goto L37592;
  goto ret0;

 L37592: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, V16HImode))
    {
      operands[1] = x8;
      goto L37593;
    }
  goto ret0;

 L37593: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_MODE (x7) == V16SImode
      && GET_CODE (x7) == SIGN_EXTEND)
    goto L37594;
  goto ret0;

 L37594: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, V16HImode))
    {
      operands[2] = x8;
      goto L37595;
    }
  goto ret0;

 L37595: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37596;
  goto ret0;

 L37596: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V16HImode))
    {
      operands[3] = x5;
      goto L37597;
    }
  goto ret0;

 L37597: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37598;
  goto ret0;

 L37598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[4] = x2;
      goto L37599;
    }
  goto ret0;

 L37599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L37600;
    }
  goto ret0;

 L37600: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13686 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (MULT, V16HImode, operands)) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3513;  /* *avx2_pmulhrswv16hi3_mask */
    }
  goto ret0;

 L29866: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode)
    goto L58987;
  goto ret0;

 L58987: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29867;
    }
 L58988: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L44222;
    }
  goto ret0;

 L29867: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29868;
    }
  x3 = XEXP (x2, 0);
  goto L58988;

 L29868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L29869;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58988;

 L29869: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29870;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58988;

 L29870: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 406 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2864;  /* ashrv16hi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L58988;

 L44222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L44223;
    }
  goto ret0;

 L44223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L44224;
    }
  goto ret0;

 L44224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44225;
    }
  goto ret0;

 L44225: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4261;  /* avx512vl_ashrvv16hi_mask */
    }
  goto ret0;

 L30031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L44462;
    }
  goto ret0;

 L44462: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L44463;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30033;
    }
  goto ret0;

 L44463: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L44464;
    }
  goto ret0;

 L44464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44465;
    }
  goto ret0;

 L44465: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4293;  /* avx512vl_ashlvv16hi_mask */
    }
  goto ret0;

 L30033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L30034;
    }
  goto ret0;

 L30034: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30035;
    }
  goto ret0;

 L30035: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2886;  /* ashlv16hi3_mask */
    }
  goto ret0;

 L30046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L44477;
    }
  goto ret0;

 L44477: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L44478;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30048;
    }
  goto ret0;

 L44478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L44479;
    }
  goto ret0;

 L44479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44480;
    }
  goto ret0;

 L44480: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4295;  /* avx512vl_lshrvv16hi_mask */
    }
  goto ret0;

 L30048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L30049;
    }
  goto ret0;

 L30049: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30050;
    }
  goto ret0;

 L30050: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2888;  /* lshrv16hi3_mask */
    }
  goto ret0;

 L31339: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L31340;
    }
  goto ret0;

 L31340: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L31341;
    }
  goto ret0;

 L31341: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L31342;
    }
  goto ret0;

 L31342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31343;
    }
  goto ret0;

 L31343: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3064;  /* smaxv16hi3_mask */
    }
  goto ret0;

 L31354: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L31355;
    }
  goto ret0;

 L31355: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L31356;
    }
  goto ret0;

 L31356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L31357;
    }
  goto ret0;

 L31357: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31358;
    }
  goto ret0;

 L31358: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3066;  /* sminv16hi3_mask */
    }
  goto ret0;

 L31369: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L31370;
    }
  goto ret0;

 L31370: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L31371;
    }
  goto ret0;

 L31371: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L31372;
    }
  goto ret0;

 L31372: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31373;
    }
  goto ret0;

 L31373: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3068;  /* umaxv16hi3_mask */
    }
  goto ret0;

 L31384: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L31385;
    }
  goto ret0;

 L31385: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L31386;
    }
  goto ret0;

 L31386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L31387;
    }
  goto ret0;

 L31387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L31388;
    }
  goto ret0;

 L31388: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3070;  /* uminv16hi3_mask */
    }
  goto ret0;

 L32138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode)
    goto L58989;
  goto ret0;

 L58989: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32139;
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L32630;
    }
  goto ret0;

 L32139: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16HImode))
    {
      operands[1] = x4;
      goto L32140;
    }
  goto ret0;

 L32140: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L32141;
    }
  goto ret0;

 L32141: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L32142;
    }
  goto ret0;

 L32142: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32143;
    }
  goto ret0;

 L32143: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3176;  /* *andnotv16hi3 */
    }
 L32338: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10896 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3197;  /* *andnotv16hi3_mask */
    }
  goto ret0;

 L32630: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L32631;
    }
  goto ret0;

 L32631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L32632;
    }
  goto ret0;

 L32632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32633;
    }
  goto ret0;

 L32633: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V16HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3236;  /* andv16hi3_mask */
    }
  goto ret0;

 L32644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L32645;
    }
  goto ret0;

 L32645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L32646;
    }
  goto ret0;

 L32646: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L32647;
    }
  goto ret0;

 L32647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32648;
    }
  goto ret0;

 L32648: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V16HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3238;  /* iorv16hi3_mask */
    }
  goto ret0;

 L32659: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L32660;
    }
  goto ret0;

 L32660: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L32661;
    }
  goto ret0;

 L32661: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L32662;
    }
  goto ret0;

 L32662: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32663;
    }
  goto ret0;

 L32663: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V16HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3240;  /* xorv16hi3_mask */
    }
  goto ret0;

 L33313: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode)
    goto L58991;
  goto ret0;

 L58991: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L33314;
    case US_TRUNCATE:
      goto L38177;
    default:
     break;
   }
  goto ret0;

 L33314: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L33315;
    }
  goto ret0;

 L33315: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == SS_TRUNCATE)
    goto L33316;
  goto ret0;

 L33316: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L33317;
    }
  goto ret0;

 L33317: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L33318;
    }
  goto ret0;

 L33318: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L33319;
    }
  goto ret0;

 L33319: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11097 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3328;  /* avx2_packssdw_mask */
    }
  goto ret0;

 L38177: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L38178;
    }
  goto ret0;

 L38178: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == US_TRUNCATE)
    goto L38179;
  goto ret0;

 L38179: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L38180;
    }
  goto ret0;

 L38180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L38181;
    }
  goto ret0;

 L38181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L38182;
    }
  goto ret0;

 L38182: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 14112 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 3595;  /* avx2_packusdw_mask */
    }
  goto ret0;

 L34061: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V32HImode:
      goto L58993;
    case V16HImode:
      goto L58994;
    default:
      break;
    }
  goto ret0;

 L58993: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L34062;
  goto ret0;

 L34062: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16HImode))
    {
      operands[1] = x4;
      goto L34063;
    }
  goto ret0;

 L34063: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V16HImode))
    {
      operands[2] = x4;
      goto L34064;
    }
  goto ret0;

 L34064: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L34065;
  goto ret0;

 L34065: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58995;
  goto ret0;

 L58995: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 4LL:
        goto L34066;
      case 0LL:
        goto L34232;
      default:
        break;
      }
  goto ret0;

 L34066: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L34067;
  goto ret0;

 L34067: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34068;
  goto ret0;

 L34068: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L34069;
  goto ret0;

 L34069: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34070;
  goto ret0;

 L34070: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L34071;
  goto ret0;

 L34071: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34072;
  goto ret0;

 L34072: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L34073;
  goto ret0;

 L34073: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34074;
  goto ret0;

 L34074: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L34075;
  goto ret0;

 L34075: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34076;
  goto ret0;

 L34076: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L34077;
  goto ret0;

 L34077: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34078;
  goto ret0;

 L34078: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L34079;
  goto ret0;

 L34079: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34080;
  goto ret0;

 L34080: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L34081;
  goto ret0;

 L34081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L34082;
    }
  goto ret0;

 L34082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34083;
    }
  goto ret0;

 L34083: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11358 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 3352;  /* avx2_interleave_highv16hi_mask */
    }
  goto ret0;

 L34232: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L34233;
  goto ret0;

 L34233: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34234;
  goto ret0;

 L34234: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L34235;
  goto ret0;

 L34235: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34236;
  goto ret0;

 L34236: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L34237;
  goto ret0;

 L34237: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34238;
  goto ret0;

 L34238: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L34239;
  goto ret0;

 L34239: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34240;
  goto ret0;

 L34240: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L34241;
  goto ret0;

 L34241: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34242;
  goto ret0;

 L34242: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L34243;
  goto ret0;

 L34243: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34244;
  goto ret0;

 L34244: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L34245;
  goto ret0;

 L34245: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34246;
  goto ret0;

 L34246: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L34247;
  goto ret0;

 L34247: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L34248;
    }
  goto ret0;

 L34248: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34249;
    }
  goto ret0;

 L34249: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11426 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 3358;  /* avx2_interleave_lowv16hi_mask */
    }
  goto ret0;

 L58994: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L35290;
    }
  goto ret0;

 L35290: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L35291;
  goto ret0;

 L35291: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L58997;
  goto ret0;

 L58997: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35292;
    }
 L58998: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L35384;
  goto ret0;

 L35292: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35293;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35293: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35294;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35294: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35295;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35295: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35296;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35296: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35297;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35297: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L35298;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35298: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L35299;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35299: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35300;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35300: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35301;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35301: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35302;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35302: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35303;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35303: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L35304;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35304: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L35305;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35305: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L35306;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35306: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L35307;
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[10] = x2;
      goto L35308;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[11] = x2;
      goto L35309;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12326 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && TARGET_AVX512BW && TARGET_AVX512VL
   && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 8 == INTVAL (operands[9]))))
    {
      return 3426;  /* avx2_pshuflw_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L58998;

 L35384: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35385;
  goto ret0;

 L35385: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35386;
  goto ret0;

 L35386: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35387;
  goto ret0;

 L35387: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35388;
    }
  goto ret0;

 L35388: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35389;
    }
  goto ret0;

 L35389: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35390;
    }
  goto ret0;

 L35390: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35391;
    }
  goto ret0;

 L35391: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L35392;
  goto ret0;

 L35392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L35393;
  goto ret0;

 L35393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L35394;
  goto ret0;

 L35394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L35395;
  goto ret0;

 L35395: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35396;
    }
  goto ret0;

 L35396: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35397;
    }
  goto ret0;

 L35397: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35398;
    }
  goto ret0;

 L35398: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35399;
    }
  goto ret0;

 L35399: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[10] = x2;
      goto L35400;
    }
  goto ret0;

 L35400: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[11] = x2;
      goto L35401;
    }
  goto ret0;

 L35401: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12483 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && TARGET_AVX512BW && TARGET_AVX512VL
   && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 8 == INTVAL (operands[9]))))
    {
      return 3432;  /* avx2_pshufhw_1_mask */
    }
  goto ret0;

 L37954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L37955;
    }
  goto ret0;

 L37955: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L37956;
    }
  goto ret0;

 L37956: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L37957;
    }
  goto ret0;

 L37957: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3562;  /* absv16hi2_mask */
    }
  goto ret0;

 L38258: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38259;
    }
  goto ret0;

 L38259: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L38260;
    }
  goto ret0;

 L38260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L38261;
    }
  goto ret0;

 L38261: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14220 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512BW && TARGET_AVX512VL)))
    {
      return 3606;  /* avx2_sign_extendv16qiv16hi2_mask */
    }
  goto ret0;

 L38271: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38272;
    }
  goto ret0;

 L38272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L38273;
    }
  goto ret0;

 L38273: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L38274;
    }
  goto ret0;

 L38274: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14220 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512BW && TARGET_AVX512VL)))
    {
      return 3608;  /* avx2_zero_extendv16qiv16hi2_mask */
    }
  goto ret0;

 L41780: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode)
    goto L58999;
  goto ret0;

 L58999: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41781;
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L41919;
    }
  goto ret0;

 L41781: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L41782;
    }
  goto ret0;

 L41782: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41783;
  goto ret0;

 L41783: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41784;
  goto ret0;

 L41784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L41785;
    }
  goto ret0;

 L41785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41786;
    }
  goto ret0;

 L41786: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3958;  /* avx512vl_vec_dupv16hi_mask */
    }
  goto ret0;

 L41919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L41920;
    }
  goto ret0;

 L41920: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41921;
    }
  goto ret0;

 L41921: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3978;  /* avx512vl_vec_dup_gprv16hi_mask */
    }
  goto ret0;

 L11670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L11671;
    }
  x2 = XEXP (x1, 0);
  goto L58935;

 L11671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11672;
    }
  x2 = XEXP (x1, 0);
  goto L58935;

 L11672: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1034;  /* avx512vl_loadv16hi_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L58935;

 L11796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L11797;
    }
  goto ret0;

 L11797: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11798;
    }
  if (avx2_pblendw_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38229;
    }
  goto ret0;

 L11798: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1052;  /* avx512vl_blendmv16hi */
    }
  goto ret0;

 L38229: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14180 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3601;  /* *avx2_pblendw */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_38 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  x6 = XEXP (x5, 1);
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35864;
  goto ret0;

 L35864: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35865;
  goto ret0;

 L35865: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L35866;
  goto ret0;

 L35866: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35867;
  goto ret0;

 L35867: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35868;
  goto ret0;

 L35868: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35869;
  goto ret0;

 L35869: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35870;
  goto ret0;

 L35870: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35871;
  goto ret0;

 L35871: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L35872;
  goto ret0;

 L35872: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35873;
  goto ret0;

 L35873: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35874;
  goto ret0;

 L35874: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35875;
  goto ret0;

 L35875: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L35876;
  goto ret0;

 L35876: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35877;
  goto ret0;

 L35877: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35878;
  goto ret0;

 L35878: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35879;
  goto ret0;

 L35879: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35880;
  goto ret0;

 L35880: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L35881;
  goto ret0;

 L35881: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35882;
  goto ret0;

 L35882: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35883;
  goto ret0;

 L35883: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35884;
  goto ret0;

 L35884: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L35885;
  goto ret0;

 L35885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L35886;
  goto ret0;

 L35886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L35887;
  goto ret0;

 L35887: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35888;
  goto ret0;

 L35888: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35889;
  goto ret0;

 L35889: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35890;
  goto ret0;

 L35890: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[2] = x7;
      goto L35891;
    }
  goto ret0;

 L35891: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35892;
  goto ret0;

 L35892: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L35893;
  goto ret0;

 L35893: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35894;
  goto ret0;

 L35894: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35895;
  goto ret0;

 L35895: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35896;
  goto ret0;

 L35896: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35897;
  goto ret0;

 L35897: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35898;
  goto ret0;

 L35898: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35899;
  goto ret0;

 L35899: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35900;
  goto ret0;

 L35900: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35901;
  goto ret0;

 L35901: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35902;
  goto ret0;

 L35902: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35903;
  goto ret0;

 L35903: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35904;
  goto ret0;

 L35904: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35905;
  goto ret0;

 L35905: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35906;
  goto ret0;

 L35906: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35907;
  goto ret0;

 L35907: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35908;
  goto ret0;

 L35908: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35909;
  goto ret0;

 L35909: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35910;
  goto ret0;

 L35910: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35911;
  goto ret0;

 L35911: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35912;
  goto ret0;

 L35912: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35913;
  goto ret0;

 L35913: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35914;
  goto ret0;

 L35914: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35915;
  goto ret0;

 L35915: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35916;
  goto ret0;

 L35916: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35917;
  goto ret0;

 L35917: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35918;
  goto ret0;

 L35918: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35919;
  goto ret0;

 L35919: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35920;
  goto ret0;

 L35920: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L35921;
  goto ret0;

 L35921: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35922;
  goto ret0;

 L35922: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35923;
  goto ret0;

 L35923: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35924;
  goto ret0;

 L35924: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L35925;
  goto ret0;

 L35925: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L35926;
  goto ret0;

 L35926: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35927;
  goto ret0;

 L35927: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35928;
  goto ret0;

 L35928: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35929;
  goto ret0;

 L35929: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35930;
  goto ret0;

 L35930: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35931;
  goto ret0;

 L35931: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L35932;
  goto ret0;

 L35932: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35933;
  goto ret0;

 L35933: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35934;
  goto ret0;

 L35934: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35935;
  goto ret0;

 L35935: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L35936;
  goto ret0;

 L35936: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35937;
  goto ret0;

 L35937: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35938;
  goto ret0;

 L35938: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35939;
  goto ret0;

 L35939: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35940;
  goto ret0;

 L35940: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L35941;
  goto ret0;

 L35941: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35942;
  goto ret0;

 L35942: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35943;
  goto ret0;

 L35943: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35944;
  goto ret0;

 L35944: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L35945;
  goto ret0;

 L35945: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35946;
  goto ret0;

 L35946: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35947;
  goto ret0;

 L35947: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35948;
  goto ret0;

 L35948: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35949;
  goto ret0;

 L35949: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35950;
  goto ret0;

 L35950: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L35951;
  goto ret0;

 L35951: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35952;
  goto ret0;

 L35952: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35953;
  goto ret0;

 L35953: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35954;
  goto ret0;

 L35954: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L35955;
  goto ret0;

 L35955: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35956;
  goto ret0;

 L35956: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35957;
  goto ret0;

 L35957: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35958;
  goto ret0;

 L35958: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35959;
  goto ret0;

 L35959: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L35960;
  goto ret0;

 L35960: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35961;
  goto ret0;

 L35961: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L35962;
  goto ret0;

 L35962: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35963;
  goto ret0;

 L35963: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 13266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3481;  /* avx2_phaddwv16hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_39 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  x6 = XEXP (x5, 1);
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36025;
  goto ret0;

 L36025: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36026;
  goto ret0;

 L36026: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L36027;
  goto ret0;

 L36027: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36028;
  goto ret0;

 L36028: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36029;
  goto ret0;

 L36029: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36030;
  goto ret0;

 L36030: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36031;
  goto ret0;

 L36031: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36032;
  goto ret0;

 L36032: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L36033;
  goto ret0;

 L36033: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36034;
  goto ret0;

 L36034: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36035;
  goto ret0;

 L36035: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36036;
  goto ret0;

 L36036: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L36037;
  goto ret0;

 L36037: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36038;
  goto ret0;

 L36038: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36039;
  goto ret0;

 L36039: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36040;
  goto ret0;

 L36040: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36041;
  goto ret0;

 L36041: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L36042;
  goto ret0;

 L36042: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36043;
  goto ret0;

 L36043: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36044;
  goto ret0;

 L36044: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36045;
  goto ret0;

 L36045: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L36046;
  goto ret0;

 L36046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36047;
  goto ret0;

 L36047: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36048;
  goto ret0;

 L36048: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36049;
  goto ret0;

 L36049: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36050;
  goto ret0;

 L36050: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36051;
  goto ret0;

 L36051: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[2] = x7;
      goto L36052;
    }
  goto ret0;

 L36052: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36053;
  goto ret0;

 L36053: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36054;
  goto ret0;

 L36054: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36055;
  goto ret0;

 L36055: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36056;
  goto ret0;

 L36056: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36057;
  goto ret0;

 L36057: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36058;
  goto ret0;

 L36058: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36059;
  goto ret0;

 L36059: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36060;
  goto ret0;

 L36060: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36061;
  goto ret0;

 L36061: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36062;
  goto ret0;

 L36062: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36063;
  goto ret0;

 L36063: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36064;
  goto ret0;

 L36064: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36065;
  goto ret0;

 L36065: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36066;
  goto ret0;

 L36066: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36067;
  goto ret0;

 L36067: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36068;
  goto ret0;

 L36068: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36069;
  goto ret0;

 L36069: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36070;
  goto ret0;

 L36070: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36071;
  goto ret0;

 L36071: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36072;
  goto ret0;

 L36072: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36073;
  goto ret0;

 L36073: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36074;
  goto ret0;

 L36074: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36075;
  goto ret0;

 L36075: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36076;
  goto ret0;

 L36076: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36077;
  goto ret0;

 L36077: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36078;
  goto ret0;

 L36078: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36079;
  goto ret0;

 L36079: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36080;
  goto ret0;

 L36080: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36081;
  goto ret0;

 L36081: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36082;
  goto ret0;

 L36082: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36083;
  goto ret0;

 L36083: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36084;
  goto ret0;

 L36084: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36085;
  goto ret0;

 L36085: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36086;
  goto ret0;

 L36086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36087;
  goto ret0;

 L36087: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36088;
  goto ret0;

 L36088: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36089;
  goto ret0;

 L36089: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36090;
  goto ret0;

 L36090: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36091;
  goto ret0;

 L36091: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36092;
  goto ret0;

 L36092: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L36093;
  goto ret0;

 L36093: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36094;
  goto ret0;

 L36094: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36095;
  goto ret0;

 L36095: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36096;
  goto ret0;

 L36096: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L36097;
  goto ret0;

 L36097: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36098;
  goto ret0;

 L36098: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36099;
  goto ret0;

 L36099: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36100;
  goto ret0;

 L36100: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36101;
  goto ret0;

 L36101: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L36102;
  goto ret0;

 L36102: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36103;
  goto ret0;

 L36103: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36104;
  goto ret0;

 L36104: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36105;
  goto ret0;

 L36105: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L36106;
  goto ret0;

 L36106: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36107;
  goto ret0;

 L36107: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36108;
  goto ret0;

 L36108: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36109;
  goto ret0;

 L36109: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36110;
  goto ret0;

 L36110: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36111;
  goto ret0;

 L36111: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L36112;
  goto ret0;

 L36112: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36113;
  goto ret0;

 L36113: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36114;
  goto ret0;

 L36114: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36115;
  goto ret0;

 L36115: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L36116;
  goto ret0;

 L36116: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36117;
  goto ret0;

 L36117: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36118;
  goto ret0;

 L36118: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36119;
  goto ret0;

 L36119: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36120;
  goto ret0;

 L36120: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L36121;
  goto ret0;

 L36121: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36122;
  goto ret0;

 L36122: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36123;
  goto ret0;

 L36123: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36124;
  goto ret0;

 L36124: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 13266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3482;  /* avx2_phaddswv16hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_40 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  x6 = XEXP (x5, 1);
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36186;
  goto ret0;

 L36186: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36187;
  goto ret0;

 L36187: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L36188;
  goto ret0;

 L36188: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36189;
  goto ret0;

 L36189: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36190;
  goto ret0;

 L36190: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36191;
  goto ret0;

 L36191: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36192;
  goto ret0;

 L36192: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36193;
  goto ret0;

 L36193: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L36194;
  goto ret0;

 L36194: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36195;
  goto ret0;

 L36195: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36196;
  goto ret0;

 L36196: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36197;
  goto ret0;

 L36197: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L36198;
  goto ret0;

 L36198: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36199;
  goto ret0;

 L36199: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36200;
  goto ret0;

 L36200: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36201;
  goto ret0;

 L36201: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36202;
  goto ret0;

 L36202: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L36203;
  goto ret0;

 L36203: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36204;
  goto ret0;

 L36204: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36205;
  goto ret0;

 L36205: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36206;
  goto ret0;

 L36206: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L36207;
  goto ret0;

 L36207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36208;
  goto ret0;

 L36208: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36209;
  goto ret0;

 L36209: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36210;
  goto ret0;

 L36210: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36211;
  goto ret0;

 L36211: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36212;
  goto ret0;

 L36212: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[2] = x7;
      goto L36213;
    }
  goto ret0;

 L36213: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36214;
  goto ret0;

 L36214: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36215;
  goto ret0;

 L36215: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36216;
  goto ret0;

 L36216: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36217;
  goto ret0;

 L36217: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36218;
  goto ret0;

 L36218: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36219;
  goto ret0;

 L36219: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36220;
  goto ret0;

 L36220: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36221;
  goto ret0;

 L36221: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36222;
  goto ret0;

 L36222: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36223;
  goto ret0;

 L36223: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36224;
  goto ret0;

 L36224: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36225;
  goto ret0;

 L36225: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36226;
  goto ret0;

 L36226: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36227;
  goto ret0;

 L36227: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36228;
  goto ret0;

 L36228: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36229;
  goto ret0;

 L36229: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36230;
  goto ret0;

 L36230: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36231;
  goto ret0;

 L36231: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36232;
  goto ret0;

 L36232: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36233;
  goto ret0;

 L36233: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36234;
  goto ret0;

 L36234: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36235;
  goto ret0;

 L36235: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36236;
  goto ret0;

 L36236: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36237;
  goto ret0;

 L36237: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36238;
  goto ret0;

 L36238: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36239;
  goto ret0;

 L36239: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36240;
  goto ret0;

 L36240: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36241;
  goto ret0;

 L36241: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36242;
  goto ret0;

 L36242: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36243;
  goto ret0;

 L36243: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36244;
  goto ret0;

 L36244: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36245;
  goto ret0;

 L36245: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36246;
  goto ret0;

 L36246: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36247;
  goto ret0;

 L36247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36248;
  goto ret0;

 L36248: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36249;
  goto ret0;

 L36249: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36250;
  goto ret0;

 L36250: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36251;
  goto ret0;

 L36251: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36252;
  goto ret0;

 L36252: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36253;
  goto ret0;

 L36253: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L36254;
  goto ret0;

 L36254: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36255;
  goto ret0;

 L36255: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36256;
  goto ret0;

 L36256: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36257;
  goto ret0;

 L36257: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L36258;
  goto ret0;

 L36258: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36259;
  goto ret0;

 L36259: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36260;
  goto ret0;

 L36260: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36261;
  goto ret0;

 L36261: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36262;
  goto ret0;

 L36262: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L36263;
  goto ret0;

 L36263: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36264;
  goto ret0;

 L36264: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36265;
  goto ret0;

 L36265: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36266;
  goto ret0;

 L36266: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L36267;
  goto ret0;

 L36267: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36268;
  goto ret0;

 L36268: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36269;
  goto ret0;

 L36269: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36270;
  goto ret0;

 L36270: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36271;
  goto ret0;

 L36271: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36272;
  goto ret0;

 L36272: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L36273;
  goto ret0;

 L36273: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36274;
  goto ret0;

 L36274: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36275;
  goto ret0;

 L36275: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36276;
  goto ret0;

 L36276: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L36277;
  goto ret0;

 L36277: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36278;
  goto ret0;

 L36278: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36279;
  goto ret0;

 L36279: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36280;
  goto ret0;

 L36280: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36281;
  goto ret0;

 L36281: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L36282;
  goto ret0;

 L36282: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36283;
  goto ret0;

 L36283: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36284;
  goto ret0;

 L36284: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36285;
  goto ret0;

 L36285: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 13266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3483;  /* avx2_phsubwv16hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_41 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 1);
  x6 = XEXP (x5, 1);
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36347;
  goto ret0;

 L36347: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36348;
  goto ret0;

 L36348: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L36349;
  goto ret0;

 L36349: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36350;
  goto ret0;

 L36350: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36351;
  goto ret0;

 L36351: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36352;
  goto ret0;

 L36352: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36353;
  goto ret0;

 L36353: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36354;
  goto ret0;

 L36354: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L36355;
  goto ret0;

 L36355: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36356;
  goto ret0;

 L36356: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36357;
  goto ret0;

 L36357: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36358;
  goto ret0;

 L36358: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L36359;
  goto ret0;

 L36359: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36360;
  goto ret0;

 L36360: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36361;
  goto ret0;

 L36361: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36362;
  goto ret0;

 L36362: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36363;
  goto ret0;

 L36363: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L36364;
  goto ret0;

 L36364: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36365;
  goto ret0;

 L36365: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36366;
  goto ret0;

 L36366: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36367;
  goto ret0;

 L36367: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L36368;
  goto ret0;

 L36368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36369;
  goto ret0;

 L36369: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36370;
  goto ret0;

 L36370: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36371;
  goto ret0;

 L36371: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36372;
  goto ret0;

 L36372: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36373;
  goto ret0;

 L36373: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[2] = x7;
      goto L36374;
    }
  goto ret0;

 L36374: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36375;
  goto ret0;

 L36375: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36376;
  goto ret0;

 L36376: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36377;
  goto ret0;

 L36377: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36378;
  goto ret0;

 L36378: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36379;
  goto ret0;

 L36379: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36380;
  goto ret0;

 L36380: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36381;
  goto ret0;

 L36381: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36382;
  goto ret0;

 L36382: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36383;
  goto ret0;

 L36383: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36384;
  goto ret0;

 L36384: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36385;
  goto ret0;

 L36385: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36386;
  goto ret0;

 L36386: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36387;
  goto ret0;

 L36387: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36388;
  goto ret0;

 L36388: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36389;
  goto ret0;

 L36389: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36390;
  goto ret0;

 L36390: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36391;
  goto ret0;

 L36391: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36392;
  goto ret0;

 L36392: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36393;
  goto ret0;

 L36393: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36394;
  goto ret0;

 L36394: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36395;
  goto ret0;

 L36395: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36396;
  goto ret0;

 L36396: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36397;
  goto ret0;

 L36397: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36398;
  goto ret0;

 L36398: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36399;
  goto ret0;

 L36399: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36400;
  goto ret0;

 L36400: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36401;
  goto ret0;

 L36401: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36402;
  goto ret0;

 L36402: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36403;
  goto ret0;

 L36403: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36404;
  goto ret0;

 L36404: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36405;
  goto ret0;

 L36405: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36406;
  goto ret0;

 L36406: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36407;
  goto ret0;

 L36407: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36408;
  goto ret0;

 L36408: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36409;
  goto ret0;

 L36409: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36410;
  goto ret0;

 L36410: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36411;
  goto ret0;

 L36411: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36412;
  goto ret0;

 L36412: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36413;
  goto ret0;

 L36413: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36414;
  goto ret0;

 L36414: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L36415;
  goto ret0;

 L36415: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36416;
  goto ret0;

 L36416: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36417;
  goto ret0;

 L36417: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36418;
  goto ret0;

 L36418: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L36419;
  goto ret0;

 L36419: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36420;
  goto ret0;

 L36420: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36421;
  goto ret0;

 L36421: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36422;
  goto ret0;

 L36422: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36423;
  goto ret0;

 L36423: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L36424;
  goto ret0;

 L36424: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36425;
  goto ret0;

 L36425: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36426;
  goto ret0;

 L36426: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36427;
  goto ret0;

 L36427: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L36428;
  goto ret0;

 L36428: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36429;
  goto ret0;

 L36429: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36430;
  goto ret0;

 L36430: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36431;
  goto ret0;

 L36431: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36432;
  goto ret0;

 L36432: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36433;
  goto ret0;

 L36433: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L36434;
  goto ret0;

 L36434: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36435;
  goto ret0;

 L36435: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36436;
  goto ret0;

 L36436: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36437;
  goto ret0;

 L36437: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L36438;
  goto ret0;

 L36438: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36439;
  goto ret0;

 L36439: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36440;
  goto ret0;

 L36440: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36441;
  goto ret0;

 L36441: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36442;
  goto ret0;

 L36442: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L36443;
  goto ret0;

 L36443: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36444;
  goto ret0;

 L36444: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L36445;
  goto ret0;

 L36445: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36446;
  goto ret0;

 L36446: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 13266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3484;  /* avx2_phsubswv16hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_42 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  switch (GET_CODE (x5))
    {
    case PLUS:
      goto L35810;
    case SS_PLUS:
      goto L35971;
    case MINUS:
      goto L36132;
    case SS_MINUS:
      goto L36293;
    default:
     break;
   }
  goto ret0;

 L35810: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35811;
  goto ret0;

 L35811: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (register_operand (x7, V16HImode))
    {
      operands[1] = x7;
      goto L35812;
    }
  goto ret0;

 L35812: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35813;
  goto ret0;

 L35813: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L35814;
  goto ret0;

 L35814: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35815;
  goto ret0;

 L35815: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35816;
  goto ret0;

 L35816: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35817;
  goto ret0;

 L35817: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35818;
  goto ret0;

 L35818: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35819;
  goto ret0;

 L35819: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35820;
  goto ret0;

 L35820: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35821;
  goto ret0;

 L35821: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35822;
  goto ret0;

 L35822: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35823;
  goto ret0;

 L35823: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35824;
  goto ret0;

 L35824: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35825;
  goto ret0;

 L35825: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35826;
  goto ret0;

 L35826: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35827;
  goto ret0;

 L35827: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35828;
  goto ret0;

 L35828: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35829;
  goto ret0;

 L35829: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35830;
  goto ret0;

 L35830: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35831;
  goto ret0;

 L35831: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35832;
  goto ret0;

 L35832: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35833;
  goto ret0;

 L35833: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35834;
  goto ret0;

 L35834: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35835;
  goto ret0;

 L35835: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35836;
  goto ret0;

 L35836: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35837;
  goto ret0;

 L35837: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35838;
  goto ret0;

 L35838: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35839;
  goto ret0;

 L35839: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35840;
  goto ret0;

 L35840: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35841;
  goto ret0;

 L35841: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L35842;
  goto ret0;

 L35842: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35843;
  goto ret0;

 L35843: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35844;
  goto ret0;

 L35844: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35845;
  goto ret0;

 L35845: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L35846;
  goto ret0;

 L35846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L35847;
  goto ret0;

 L35847: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35848;
  goto ret0;

 L35848: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35849;
  goto ret0;

 L35849: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35850;
  goto ret0;

 L35850: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35851;
  goto ret0;

 L35851: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35852;
  goto ret0;

 L35852: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L35853;
  goto ret0;

 L35853: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35854;
  goto ret0;

 L35854: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35855;
  goto ret0;

 L35855: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35856;
  goto ret0;

 L35856: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L35857;
  goto ret0;

 L35857: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == PLUS)
    goto L35858;
  goto ret0;

 L35858: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35859;
  goto ret0;

 L35859: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35860;
  goto ret0;

 L35860: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35861;
  goto ret0;

 L35861: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L35862;
  goto ret0;

 L35862: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35863;
  goto ret0;

 L35863: ATTRIBUTE_UNUSED_LABEL
  return recog_38 (x0, insn, pnum_clobbers);

 L35971: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35972;
  goto ret0;

 L35972: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (register_operand (x7, V16HImode))
    {
      operands[1] = x7;
      goto L35973;
    }
  goto ret0;

 L35973: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35974;
  goto ret0;

 L35974: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L35975;
  goto ret0;

 L35975: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35976;
  goto ret0;

 L35976: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35977;
  goto ret0;

 L35977: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35978;
  goto ret0;

 L35978: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35979;
  goto ret0;

 L35979: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L35980;
  goto ret0;

 L35980: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35981;
  goto ret0;

 L35981: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35982;
  goto ret0;

 L35982: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35983;
  goto ret0;

 L35983: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35984;
  goto ret0;

 L35984: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35985;
  goto ret0;

 L35985: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35986;
  goto ret0;

 L35986: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35987;
  goto ret0;

 L35987: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35988;
  goto ret0;

 L35988: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35989;
  goto ret0;

 L35989: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L35990;
  goto ret0;

 L35990: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35991;
  goto ret0;

 L35991: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35992;
  goto ret0;

 L35992: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35993;
  goto ret0;

 L35993: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35994;
  goto ret0;

 L35994: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L35995;
  goto ret0;

 L35995: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L35996;
  goto ret0;

 L35996: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L35997;
  goto ret0;

 L35997: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35998;
  goto ret0;

 L35998: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L35999;
  goto ret0;

 L35999: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36000;
  goto ret0;

 L36000: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36001;
  goto ret0;

 L36001: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36002;
  goto ret0;

 L36002: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36003;
  goto ret0;

 L36003: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36004;
  goto ret0;

 L36004: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36005;
  goto ret0;

 L36005: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36006;
  goto ret0;

 L36006: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36007;
  goto ret0;

 L36007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36008;
  goto ret0;

 L36008: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36009;
  goto ret0;

 L36009: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36010;
  goto ret0;

 L36010: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36011;
  goto ret0;

 L36011: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36012;
  goto ret0;

 L36012: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36013;
  goto ret0;

 L36013: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L36014;
  goto ret0;

 L36014: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36015;
  goto ret0;

 L36015: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36016;
  goto ret0;

 L36016: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36017;
  goto ret0;

 L36017: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L36018;
  goto ret0;

 L36018: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_PLUS)
    goto L36019;
  goto ret0;

 L36019: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36020;
  goto ret0;

 L36020: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36021;
  goto ret0;

 L36021: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36022;
  goto ret0;

 L36022: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L36023;
  goto ret0;

 L36023: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36024;
  goto ret0;

 L36024: ATTRIBUTE_UNUSED_LABEL
  return recog_39 (x0, insn, pnum_clobbers);

 L36132: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36133;
  goto ret0;

 L36133: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (register_operand (x7, V16HImode))
    {
      operands[1] = x7;
      goto L36134;
    }
  goto ret0;

 L36134: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36135;
  goto ret0;

 L36135: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36136;
  goto ret0;

 L36136: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36137;
  goto ret0;

 L36137: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36138;
  goto ret0;

 L36138: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36139;
  goto ret0;

 L36139: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36140;
  goto ret0;

 L36140: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36141;
  goto ret0;

 L36141: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36142;
  goto ret0;

 L36142: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36143;
  goto ret0;

 L36143: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36144;
  goto ret0;

 L36144: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36145;
  goto ret0;

 L36145: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36146;
  goto ret0;

 L36146: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36147;
  goto ret0;

 L36147: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36148;
  goto ret0;

 L36148: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36149;
  goto ret0;

 L36149: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36150;
  goto ret0;

 L36150: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36151;
  goto ret0;

 L36151: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36152;
  goto ret0;

 L36152: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36153;
  goto ret0;

 L36153: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36154;
  goto ret0;

 L36154: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36155;
  goto ret0;

 L36155: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36156;
  goto ret0;

 L36156: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36157;
  goto ret0;

 L36157: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36158;
  goto ret0;

 L36158: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36159;
  goto ret0;

 L36159: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36160;
  goto ret0;

 L36160: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36161;
  goto ret0;

 L36161: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36162;
  goto ret0;

 L36162: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36163;
  goto ret0;

 L36163: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36164;
  goto ret0;

 L36164: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36165;
  goto ret0;

 L36165: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36166;
  goto ret0;

 L36166: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36167;
  goto ret0;

 L36167: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36168;
  goto ret0;

 L36168: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36169;
  goto ret0;

 L36169: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36170;
  goto ret0;

 L36170: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36171;
  goto ret0;

 L36171: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36172;
  goto ret0;

 L36172: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36173;
  goto ret0;

 L36173: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36174;
  goto ret0;

 L36174: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L36175;
  goto ret0;

 L36175: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36176;
  goto ret0;

 L36176: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36177;
  goto ret0;

 L36177: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36178;
  goto ret0;

 L36178: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L36179;
  goto ret0;

 L36179: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == MINUS)
    goto L36180;
  goto ret0;

 L36180: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36181;
  goto ret0;

 L36181: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36182;
  goto ret0;

 L36182: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36183;
  goto ret0;

 L36183: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L36184;
  goto ret0;

 L36184: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36185;
  goto ret0;

 L36185: ATTRIBUTE_UNUSED_LABEL
  return recog_40 (x0, insn, pnum_clobbers);

 L36293: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36294;
  goto ret0;

 L36294: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (register_operand (x7, V16HImode))
    {
      operands[1] = x7;
      goto L36295;
    }
  goto ret0;

 L36295: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36296;
  goto ret0;

 L36296: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36297;
  goto ret0;

 L36297: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36298;
  goto ret0;

 L36298: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36299;
  goto ret0;

 L36299: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36300;
  goto ret0;

 L36300: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36301;
  goto ret0;

 L36301: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36302;
  goto ret0;

 L36302: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36303;
  goto ret0;

 L36303: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36304;
  goto ret0;

 L36304: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36305;
  goto ret0;

 L36305: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36306;
  goto ret0;

 L36306: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36307;
  goto ret0;

 L36307: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36308;
  goto ret0;

 L36308: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36309;
  goto ret0;

 L36309: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36310;
  goto ret0;

 L36310: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36311;
  goto ret0;

 L36311: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36312;
  goto ret0;

 L36312: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36313;
  goto ret0;

 L36313: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36314;
  goto ret0;

 L36314: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36315;
  goto ret0;

 L36315: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36316;
  goto ret0;

 L36316: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36317;
  goto ret0;

 L36317: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36318;
  goto ret0;

 L36318: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36319;
  goto ret0;

 L36319: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36320;
  goto ret0;

 L36320: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36321;
  goto ret0;

 L36321: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36322;
  goto ret0;

 L36322: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36323;
  goto ret0;

 L36323: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36324;
  goto ret0;

 L36324: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36325;
  goto ret0;

 L36325: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36326;
  goto ret0;

 L36326: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36327;
  goto ret0;

 L36327: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36328;
  goto ret0;

 L36328: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36329;
  goto ret0;

 L36329: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36330;
  goto ret0;

 L36330: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L36331;
  goto ret0;

 L36331: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36332;
  goto ret0;

 L36332: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36333;
  goto ret0;

 L36333: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36334;
  goto ret0;

 L36334: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36335;
  goto ret0;

 L36335: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L36336;
  goto ret0;

 L36336: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36337;
  goto ret0;

 L36337: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36338;
  goto ret0;

 L36338: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36339;
  goto ret0;

 L36339: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L36340;
  goto ret0;

 L36340: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == SS_MINUS)
    goto L36341;
  goto ret0;

 L36341: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36342;
  goto ret0;

 L36342: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[1]))
    goto L36343;
  goto ret0;

 L36343: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_CODE (x7) == PARALLEL
      && XVECLEN (x7, 0) == 1)
    goto L36344;
  goto ret0;

 L36344: ATTRIBUTE_UNUSED_LABEL
  x8 = XVECEXP (x7, 0, 0);
  if (x8 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L36345;
  goto ret0;

 L36345: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == VEC_SELECT)
    goto L36346;
  goto ret0;

 L36346: ATTRIBUTE_UNUSED_LABEL
  return recog_41 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_43 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11669;
    case UNSPEC:
      goto L58927;
    case PLUS:
      goto L28337;
    case MINUS:
      goto L28352;
    case SS_PLUS:
      goto L29033;
    case US_PLUS:
      goto L29048;
    case SS_MINUS:
      goto L29063;
    case US_MINUS:
      goto L29078;
    case MULT:
      goto L29168;
    case TRUNCATE:
      goto L29246;
    case ASHIFTRT:
      goto L29835;
    case ASHIFT:
      goto L30024;
    case LSHIFTRT:
      goto L30039;
    case SMAX:
      goto L30684;
    case SMIN:
      goto L30690;
    case UMAX:
      goto L30696;
    case UMIN:
      goto L30702;
    case EQ:
      goto L31602;
    case GT:
      goto L31824;
    case AND:
      goto L32130;
    case IOR:
      goto L32637;
    case XOR:
      goto L32652;
    case VEC_CONCAT:
      goto L33304;
    case VEC_SELECT:
      goto L34037;
    case ABS:
      goto L37833;
    case SIGN_EXTEND:
      goto L38252;
    case ZERO_EXTEND:
      goto L38265;
    case IF_THEN_ELSE:
      goto L40030;
    case VEC_DUPLICATE:
      goto L41070;
    default:
     break;
   }
  goto ret0;

 L11669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L58936;
 L22005: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L22006;
    }
  goto ret0;

 L58936: ATTRIBUTE_UNUSED_LABEL
  tem = recog_37 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L22005;

 L22006: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L22007;
    }
  goto ret0;

 L22007: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L22008;
    }
  goto ret0;

 L22008: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2193;  /* *avx512vl_cvtmask2wv16hi */
    }
  goto ret0;

 L58927: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L59001;
    case 2:
      goto L59002;
    case 3:
      goto L59005;
    default:
      break;
    }
  goto ret0;

 L59001: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 104)
    goto L12177;
  goto ret0;

 L12177: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L12178;
    }
  goto ret0;

 L12178: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1108;  /* *avx512vl_loaddquv16hi */
    }
  goto ret0;

 L59002: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 183LL:
      goto L37324;
    case 108LL:
      goto L37713;
    case 143LL:
      goto L41320;
    default:
      break;
    }
  goto ret0;

 L37324: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L37325;
    }
  goto ret0;

 L37325: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L37326;
    }
  goto ret0;

 L37326: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3502;  /* avx512bw_pmaddubsw512v16hi */
    }
  goto ret0;

 L37713: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L37714;
    }
  goto ret0;

 L37714: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L37715;
    }
  goto ret0;

 L37715: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13755 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 385 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3526;  /* avx2_psignv16hi3 */
    }
  goto ret0;

 L41320: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L41321;
    }
  goto ret0;

 L41321: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L41322;
    }
  goto ret0;

 L41322: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16542 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && 1) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3907;  /* avx512vl_permvarv16hi */
    }
  goto ret0;

 L59005: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 147LL:
      goto L42934;
    case 148LL:
      goto L43420;
    case 182LL:
      goto L51222;
    default:
      break;
    }
  goto ret0;

 L42934: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L42935;
    }
  goto ret0;

 L42935: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L42936;
    }
  goto ret0;

 L42936: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L42937;
    }
  goto ret0;

 L42937: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4119;  /* avx512vl_vpermi2varv16hi3 */
    }
  goto ret0;

 L43420: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L43421;
    }
  goto ret0;

 L43421: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L43422;
    }
  goto ret0;

 L43422: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L43423;
    }
  goto ret0;

 L43423: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17307 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4173;  /* avx512vl_vpermt2varv16hi3 */
    }
  goto ret0;

 L51222: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L51223;
    }
  goto ret0;

 L51223: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L51224;
    }
  goto ret0;

 L51224: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51225;
    }
  goto ret0;

 L51225: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18498 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4645;  /* *avx512bw_dbpsadbwv16hi */
    }
  goto ret0;

 L28337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L28338;
    }
  goto ret0;

 L28338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L28339;
    }
  goto ret0;

 L28339: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2705;  /* *addv16hi3 */
    }
  goto ret0;

 L28352: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L28353;
    }
  goto ret0;

 L28353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L28354;
    }
  goto ret0;

 L28354: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V16HImode, operands)) && 
#line 285 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2707;  /* *subv16hi3 */
    }
  goto ret0;

 L29033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59009;
  goto ret0;

 L59009: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MULT)
    goto L37225;
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29034;
    }
  goto ret0;

 L37225: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L37226;
  goto ret0;

 L37226: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37227;
  goto ret0;

 L37227: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V32QImode))
    {
      operands[1] = x5;
      goto L37228;
    }
  goto ret0;

 L37228: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 16)
    goto L37229;
  goto ret0;

 L37229: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37230;
  goto ret0;

 L37230: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37231;
  goto ret0;

 L37231: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37232;
  goto ret0;

 L37232: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37233;
  goto ret0;

 L37233: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L37234;
  goto ret0;

 L37234: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L37235;
  goto ret0;

 L37235: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L37236;
  goto ret0;

 L37236: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37237;
  goto ret0;

 L37237: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 8);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L37238;
  goto ret0;

 L37238: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 9);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L37239;
  goto ret0;

 L37239: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 10);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L37240;
  goto ret0;

 L37240: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 11);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L37241;
  goto ret0;

 L37241: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 12);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L37242;
  goto ret0;

 L37242: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 13);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L37243;
  goto ret0;

 L37243: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 14);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L37244;
  goto ret0;

 L37244: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 15);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L37245;
  goto ret0;

 L37245: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L37246;
  goto ret0;

 L37246: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37247;
  goto ret0;

 L37247: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V32QImode))
    {
      operands[2] = x5;
      goto L37248;
    }
  goto ret0;

 L37248: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 16)
    goto L37249;
  goto ret0;

 L37249: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37250;
  goto ret0;

 L37250: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37251;
  goto ret0;

 L37251: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37252;
  goto ret0;

 L37252: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37253;
  goto ret0;

 L37253: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L37254;
  goto ret0;

 L37254: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L37255;
  goto ret0;

 L37255: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L37256;
  goto ret0;

 L37256: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37257;
  goto ret0;

 L37257: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 8);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L37258;
  goto ret0;

 L37258: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 9);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L37259;
  goto ret0;

 L37259: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 10);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L37260;
  goto ret0;

 L37260: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 11);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L37261;
  goto ret0;

 L37261: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 12);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L37262;
  goto ret0;

 L37262: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 13);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L37263;
  goto ret0;

 L37263: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 14);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L37264;
  goto ret0;

 L37264: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 15);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L37265;
  goto ret0;

 L37265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16HImode
      && GET_CODE (x2) == MULT)
    goto L37266;
  goto ret0;

 L37266: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L37267;
  goto ret0;

 L37267: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37268;
  goto ret0;

 L37268: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37269;
  goto ret0;

 L37269: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 16)
    goto L37270;
  goto ret0;

 L37270: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37271;
  goto ret0;

 L37271: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37272;
  goto ret0;

 L37272: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37273;
  goto ret0;

 L37273: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L37274;
  goto ret0;

 L37274: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L37275;
  goto ret0;

 L37275: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L37276;
  goto ret0;

 L37276: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L37277;
  goto ret0;

 L37277: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L37278;
  goto ret0;

 L37278: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 8);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L37279;
  goto ret0;

 L37279: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 9);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L37280;
  goto ret0;

 L37280: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 10);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L37281;
  goto ret0;

 L37281: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 11);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L37282;
  goto ret0;

 L37282: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 12);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L37283;
  goto ret0;

 L37283: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 13);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L37284;
  goto ret0;

 L37284: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 14);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L37285;
  goto ret0;

 L37285: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 15);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L37286;
  goto ret0;

 L37286: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L37287;
  goto ret0;

 L37287: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37288;
  goto ret0;

 L37288: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37289;
  goto ret0;

 L37289: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 16)
    goto L37290;
  goto ret0;

 L37290: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37291;
  goto ret0;

 L37291: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37292;
  goto ret0;

 L37292: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37293;
  goto ret0;

 L37293: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L37294;
  goto ret0;

 L37294: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L37295;
  goto ret0;

 L37295: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L37296;
  goto ret0;

 L37296: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L37297;
  goto ret0;

 L37297: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L37298;
  goto ret0;

 L37298: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 8);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L37299;
  goto ret0;

 L37299: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 9);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L37300;
  goto ret0;

 L37300: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 10);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L37301;
  goto ret0;

 L37301: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 11);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L37302;
  goto ret0;

 L37302: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 12);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L37303;
  goto ret0;

 L37303: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 13);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L37304;
  goto ret0;

 L37304: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 14);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L37305;
  goto ret0;

 L37305: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 15);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 13496 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3499;  /* avx2_pmaddubsw256 */
    }
  goto ret0;

 L29034: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L29035;
    }
  goto ret0;

 L29035: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_PLUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2793;  /* *avx2_ssaddv16hi3 */
    }
  goto ret0;

 L29048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29049;
    }
  goto ret0;

 L29049: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L29050;
    }
  goto ret0;

 L29050: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_PLUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2795;  /* *avx2_usaddv16hi3 */
    }
  goto ret0;

 L29063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29064;
    }
  goto ret0;

 L29064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L29065;
    }
  goto ret0;

 L29065: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_MINUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2797;  /* *avx2_sssubv16hi3 */
    }
  goto ret0;

 L29078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29079;
    }
  goto ret0;

 L29079: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L29080;
    }
  goto ret0;

 L29080: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2799;  /* *avx2_ussubv16hi3 */
    }
  goto ret0;

 L29168: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29169;
    }
  goto ret0;

 L29169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L29170;
    }
  goto ret0;

 L29170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V16HImode, operands)
   && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2811;  /* *mulv16hi3 */
    }
  goto ret0;

 L29246: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L29247;
  goto ret0;

 L29247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59010;
  goto ret0;

 L59010: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case MULT:
      goto L29248;
    case PLUS:
      goto L35664;
    default:
     break;
   }
  goto ret0;

 L29248: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SImode)
    goto L59012;
  goto ret0;

 L59012: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L29249;
    case ZERO_EXTEND:
      goto L29273;
    default:
     break;
   }
  goto ret0;

 L29249: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16HImode))
    {
      operands[1] = x5;
      goto L29250;
    }
  goto ret0;

 L29250: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V16SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L29251;
  goto ret0;

 L29251: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16HImode))
    {
      operands[2] = x5;
      goto L29252;
    }
  goto ret0;

 L29252: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V16HImode, operands)
   && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2819;  /* *smulv16hi3_highpart */
    }
  goto ret0;

 L29273: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16HImode))
    {
      operands[1] = x5;
      goto L29274;
    }
  goto ret0;

 L29274: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V16SImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L29275;
  goto ret0;

 L29275: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16HImode))
    {
      operands[2] = x5;
      goto L29276;
    }
  goto ret0;

 L29276: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && (
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V16HImode, operands)
   && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2821;  /* *umulv16hi3_highpart */
    }
  goto ret0;

 L35664: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SImode)
    goto L59014;
  goto ret0;

 L59014: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case PLUS:
      goto L35665;
    case LSHIFTRT:
      goto L37575;
    default:
     break;
   }
  goto ret0;

 L35665: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35666;
  goto ret0;

 L35666: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16HImode))
    {
      operands[1] = x6;
      goto L35667;
    }
  goto ret0;

 L35667: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V16SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35668;
  goto ret0;

 L35668: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16HImode))
    {
      operands[2] = x6;
      goto L35669;
    }
  goto ret0;

 L35669: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V16HImode))
    {
      operands[3] = x4;
      goto L35670;
    }
  goto ret0;

 L35670: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (PLUS, V16HImode, operands)) && 
#line 372 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3460;  /* *avx2_uavgv16hi3 */
    }
  goto ret0;

 L37575: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SImode
      && GET_CODE (x5) == MULT)
    goto L37576;
  goto ret0;

 L37576: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V16SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37577;
  goto ret0;

 L37577: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[1] = x7;
      goto L37578;
    }
  goto ret0;

 L37578: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V16SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37579;
  goto ret0;

 L37579: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V16HImode))
    {
      operands[2] = x7;
      goto L37580;
    }
  goto ret0;

 L37580: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37581;
  goto ret0;

 L37581: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V16HImode))
    {
      operands[3] = x4;
      goto L37582;
    }
  goto ret0;

 L37582: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 13686 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && 1 && 1
   && ix86_binary_operator_ok (MULT, V16HImode, operands)) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3512;  /* *avx2_pmulhrswv16hi3 */
    }
  goto ret0;

 L29835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59016;
  goto ret0;

 L59016: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L44215;
    }
 L59017: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29860;
    }
  goto ret0;

 L44215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L44216;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29837;
    }
  x2 = XEXP (x1, 0);
  goto L59017;

 L44216: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4260;  /* avx512vl_ashrvv16hi */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59017;

 L29837: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9901 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2859;  /* ashrv16hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59017;

 L29860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29861;
    }
  goto ret0;

 L29861: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 406 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2863;  /* *ashrv16hi3 */
    }
  goto ret0;

 L30024: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L44455;
    }
  goto ret0;

 L44455: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L44456;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30026;
    }
  goto ret0;

 L44456: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4292;  /* avx512vl_ashlvv16hi */
    }
  goto ret0;

 L30026: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2885;  /* ashlv16hi3 */
    }
  goto ret0;

 L30039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L44470;
    }
  goto ret0;

 L44470: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L44471;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30041;
    }
  goto ret0;

 L44471: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4294;  /* avx512vl_lshrvv16hi */
    }
  goto ret0;

 L30041: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 389 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2887;  /* lshrv16hi3 */
    }
  goto ret0;

 L30684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59018;
  goto ret0;

 L59018: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L30685;
    }
 L59019: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31333;
    }
  goto ret0;

 L30685: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L30686;
    }
  x2 = XEXP (x1, 0);
  goto L59019;

 L30686: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (SMAX, V16HImode, operands)))
    {
      return 2975;  /* *avx2_smaxv16hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59019;

 L31333: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31334;
    }
  goto ret0;

 L31334: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3063;  /* *smaxv16hi3 */
    }
  goto ret0;

 L30690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59020;
  goto ret0;

 L59020: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L30691;
    }
 L59021: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31348;
    }
  goto ret0;

 L30691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L30692;
    }
  x2 = XEXP (x1, 0);
  goto L59021;

 L30692: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (SMIN, V16HImode, operands)))
    {
      return 2976;  /* *avx2_sminv16hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59021;

 L31348: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31349;
    }
  goto ret0;

 L31349: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3065;  /* *sminv16hi3 */
    }
  goto ret0;

 L30696: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59022;
  goto ret0;

 L59022: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L30697;
    }
 L59023: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31363;
    }
  goto ret0;

 L30697: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L30698;
    }
  x2 = XEXP (x1, 0);
  goto L59023;

 L30698: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (UMAX, V16HImode, operands)))
    {
      return 2977;  /* *avx2_umaxv16hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59023;

 L31363: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31364;
    }
  goto ret0;

 L31364: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3067;  /* *umaxv16hi3 */
    }
  goto ret0;

 L30702: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59024;
  goto ret0;

 L59024: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L30703;
    }
 L59025: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31378;
    }
  goto ret0;

 L30703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L30704;
    }
  x2 = XEXP (x1, 0);
  goto L59025;

 L30704: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (UMIN, V16HImode, operands)))
    {
      return 2978;  /* *avx2_uminv16hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59025;

 L31378: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31379;
    }
  goto ret0;

 L31379: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3069;  /* *uminv16hi3 */
    }
  goto ret0;

 L31602: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31603;
    }
  goto ret0;

 L31603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31604;
    }
  goto ret0;

 L31604: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10383 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (EQ, V16HImode, operands)))
    {
      return 3100;  /* *avx2_eqv16hi3 */
    }
  goto ret0;

 L31824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31825;
    }
  goto ret0;

 L31825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31826;
    }
  goto ret0;

 L31826: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3133;  /* avx2_gtv16hi3 */
    }
  goto ret0;

 L32130: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59026;
  goto ret0;

 L59026: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32131;
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L32623;
    }
  goto ret0;

 L32131: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L32132;
    }
  goto ret0;

 L32132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L32133;
    }
  goto ret0;

 L32133: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3175;  /* *andnotv16hi3 */
    }
  goto ret0;

 L32623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L32624;
    }
  goto ret0;

 L32624: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V16HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3235;  /* *andv16hi3 */
    }
  goto ret0;

 L32637: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L32638;
    }
  goto ret0;

 L32638: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L32639;
    }
  goto ret0;

 L32639: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V16HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3237;  /* *iorv16hi3 */
    }
  goto ret0;

 L32652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L32653;
    }
  goto ret0;

 L32653: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L32654;
    }
  goto ret0;

 L32654: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V16HImode, operands)) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3239;  /* *xorv16hi3 */
    }
  goto ret0;

 L33304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59028;
  goto ret0;

 L59028: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L33305;
    case VEC_CONCAT:
      goto L35807;
    case US_TRUNCATE:
      goto L38168;
    case VEC_SELECT:
      goto L43936;
    case SUBREG:
    case MEM:
      goto L59031;
    default:
      goto L59032;
   }
 L59031: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L42115;
    }
 L59032: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L42185;
    }
 L59033: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L43921;
    }
 L59035: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L44521;
    }
  goto ret0;

 L33305: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L33306;
    }
  goto ret0;

 L33306: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L33307;
  goto ret0;

 L33307: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L33308;
    }
  goto ret0;

 L33308: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11097 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3327;  /* avx2_packssdw */
    }
  goto ret0;

 L35807: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L35808;
  goto ret0;

 L35808: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_CONCAT)
    goto L35809;
  goto ret0;

 L35809: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode)
    goto L59036;
  goto ret0;

 L59036: ATTRIBUTE_UNUSED_LABEL
  return recog_42 (x0, insn, pnum_clobbers);

 L38168: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L38169;
    }
  goto ret0;

 L38169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L38170;
  goto ret0;

 L38170: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L38171;
    }
  goto ret0;

 L38171: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14112 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1 && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3594;  /* avx2_packusdw */
    }
  goto ret0;

 L43936: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L43937;
    }
  goto ret0;

 L43937: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L43938;
  goto ret0;

 L43938: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43939;
  goto ret0;

 L43939: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43940;
  goto ret0;

 L43940: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43941;
  goto ret0;

 L43941: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43942;
  goto ret0;

 L43942: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L43943;
  goto ret0;

 L43943: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L43944;
  goto ret0;

 L43944: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L43945;
  goto ret0;

 L43945: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L43946;
  goto ret0;

 L43946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L43947;
    }
  goto ret0;

 L43947: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17630 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4224;  /* vec_set_hi_v16hi */
    }
  goto ret0;

 L42115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16768 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4009;  /* avx2_vbroadcasti128_v16hi */
    }
  x2 = XEXP (x1, 0);
  goto L59032;

 L42185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16851 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4023;  /* avx_vbroadcastf128_v16hi */
    }
  x2 = XEXP (x1, 0);
  goto L59033;

 L43921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L43922;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L43923;
    }
  x2 = XEXP (x1, 0);
  goto L59035;

 L43923: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L43924;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43924: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L43925;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43925: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L43926;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43926: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L43927;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43927: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L43928;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43928: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L43929;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43929: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L43930;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43930: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L43931;
  x2 = XEXP (x1, 0);
  goto L59035;

 L43931: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 17612 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4223;  /* vec_set_lo_v16hi */
    }
  x2 = XEXP (x1, 0);
  goto L59035;

 L44521: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L44522;
    }
  goto ret0;

 L44522: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4301;  /* avx_vec_concatv16hi */
    }
  goto ret0;

 L34037: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V32HImode:
      goto L59040;
    case V16HImode:
      goto L59041;
    default:
      break;
    }
  goto ret0;

 L59040: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L34038;
  goto ret0;

 L34038: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L34039;
    }
  goto ret0;

 L34039: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L34040;
    }
  goto ret0;

 L34040: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L34041;
  goto ret0;

 L34041: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L59042;
  goto ret0;

 L59042: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 4LL:
        goto L34042;
      case 0LL:
        goto L34208;
      default:
        break;
      }
  goto ret0;

 L34042: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L34043;
  goto ret0;

 L34043: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34044;
  goto ret0;

 L34044: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L34045;
  goto ret0;

 L34045: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34046;
  goto ret0;

 L34046: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L34047;
  goto ret0;

 L34047: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34048;
  goto ret0;

 L34048: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L34049;
  goto ret0;

 L34049: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34050;
  goto ret0;

 L34050: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L34051;
  goto ret0;

 L34051: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34052;
  goto ret0;

 L34052: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L34053;
  goto ret0;

 L34053: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34054;
  goto ret0;

 L34054: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L34055;
  goto ret0;

 L34055: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34056;
  goto ret0;

 L34056: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 11358 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1 && 1))
    {
      return 3351;  /* avx2_interleave_highv16hi */
    }
  goto ret0;

 L34208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L34209;
  goto ret0;

 L34209: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34210;
  goto ret0;

 L34210: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L34211;
  goto ret0;

 L34211: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34212;
  goto ret0;

 L34212: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L34213;
  goto ret0;

 L34213: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34214;
  goto ret0;

 L34214: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L34215;
  goto ret0;

 L34215: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34216;
  goto ret0;

 L34216: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L34217;
  goto ret0;

 L34217: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34218;
  goto ret0;

 L34218: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L34219;
  goto ret0;

 L34219: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34220;
  goto ret0;

 L34220: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L34221;
  goto ret0;

 L34221: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34222;
  goto ret0;

 L34222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)]
      && 
#line 11426 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1 && 1))
    {
      return 3357;  /* avx2_interleave_lowv16hi */
    }
  goto ret0;

 L59041: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L35268;
    }
  goto ret0;

 L35268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L35269;
  goto ret0;

 L35269: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L59044;
  goto ret0;

 L59044: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35270;
    }
 L59045: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x3, 0) == 0LL)
    goto L35361;
  goto ret0;

 L35270: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35271;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35271: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35272;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35272: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35273;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35273: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35274;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35274: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35275;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35275: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L35276;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35276: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L35277;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35277: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35278;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35278: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35279;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35279: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35280;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35280: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35281;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35281: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L35282;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35282: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L35283;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L35284;
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35284: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 12326 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && 1 && 1
   && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 8 == INTVAL (operands[9])))
    {
      return 3425;  /* avx2_pshuflw_1 */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59045;

 L35361: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35362;
  goto ret0;

 L35362: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35363;
  goto ret0;

 L35363: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35364;
  goto ret0;

 L35364: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35365;
    }
  goto ret0;

 L35365: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35366;
    }
  goto ret0;

 L35366: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35367;
    }
  goto ret0;

 L35367: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35368;
    }
  goto ret0;

 L35368: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L35369;
  goto ret0;

 L35369: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L35370;
  goto ret0;

 L35370: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L35371;
  goto ret0;

 L35371: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L35372;
  goto ret0;

 L35372: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35373;
    }
  goto ret0;

 L35373: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35374;
    }
  goto ret0;

 L35374: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35375;
    }
  goto ret0;

 L35375: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35376;
    }
  goto ret0;

 L35376: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12483 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && 1 && 1
   && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 8 == INTVAL (operands[9])))
    {
      return 3431;  /* avx2_pshufhw_1 */
    }
  goto ret0;

 L37833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L37834;
    }
  goto ret0;

 L37834: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13853 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3544;  /* *absv16hi2 */
    }
  goto ret0;

 L38252: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L38253;
    }
  goto ret0;

 L38253: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14220 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1 && 1))
    {
      return 3605;  /* avx2_sign_extendv16qiv16hi2 */
    }
  goto ret0;

 L38265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L38266;
    }
  goto ret0;

 L38266: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14220 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1 && 1))
    {
      return 3607;  /* avx2_zero_extendv16qiv16hi2 */
    }
  goto ret0;

 L40030: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L40031;
    }
  goto ret0;

 L40031: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L40032;
    }
  goto ret0;

 L40032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L40033;
    }
  goto ret0;

 L40033: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3777;  /* xop_pcmov_v16hi256 */
    }
  goto ret0;

 L41070: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode)
    goto L59046;
  goto ret0;

 L59046: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41071;
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L41913;
    }
  goto ret0;

 L41071: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L59048;
    case V16HImode:
      goto L59049;
    default:
      break;
    }
  goto ret0;

 L59048: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L41072;
    }
  goto ret0;

 L41072: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41073;
  goto ret0;

 L41073: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59050;
  goto ret0;

 L59050: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L59052;
  goto ret0;

 L59052: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 279 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3873;  /* avx2_pbroadcastv16hi */
    }
 L59053: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3957;  /* avx512vl_vec_dupv16hi */
    }
  goto ret0;

 L59049: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L41121;
    }
  goto ret0;

 L41121: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41122;
  goto ret0;

 L41122: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3880;  /* avx2_pbroadcastv16hi_1 */
    }
  goto ret0;

 L41913: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3977;  /* *avx512vl_vec_dup_gprv16hi */
    }
 L42140: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16786 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4014;  /* *vec_dupv16hi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_44 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59170;
    case PLUS:
      goto L28374;
    case MINUS:
      goto L28389;
    case SS_PLUS:
      goto L29100;
    case US_PLUS:
      goto L29115;
    case SS_MINUS:
      goto L29130;
    case US_MINUS:
      goto L29145;
    case MULT:
      goto L29190;
    case TRUNCATE:
      goto L29305;
    case ASHIFTRT:
      goto L29881;
    case ASHIFT:
      goto L30061;
    case LSHIFTRT:
      goto L30076;
    case SMAX:
      goto L31399;
    case SMIN:
      goto L31414;
    case UMAX:
      goto L31429;
    case UMIN:
      goto L31444;
    case AND:
      goto L32155;
    case IOR:
      goto L32689;
    case XOR:
      goto L32704;
    case VEC_CONCAT:
      goto L33332;
    case VEC_SELECT:
      goto L34103;
    case VEC_DUPLICATE:
      goto L34516;
    case ABS:
      goto L37962;
    case SIGN_EXTEND:
      goto L38319;
    case ZERO_EXTEND:
      goto L38351;
    case REG:
    case SUBREG:
    case MEM:
      goto L59137;
    default:
      goto L59138;
   }
 L59137: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L11677;
    }
 L59138: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L11803;
    }
  goto ret0;

 L59170: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L59177;
    case 2:
      goto L59178;
    case 3:
      goto L59180;
    default:
      break;
    }
  goto ret0;

 L59177: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 104)
    goto L12170;
  goto ret0;

 L12170: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L12171;
    }
  goto ret0;

 L12171: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L12172;
    }
  goto ret0;

 L12172: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12173;
    }
  goto ret0;

 L12173: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1107;  /* *avx512vl_loaddquv8hi_mask */
    }
  goto ret0;

 L59178: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 183LL:
      goto L37316;
    case 143LL:
      goto L41312;
    default:
      break;
    }
  goto ret0;

 L37316: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L37317;
    }
  goto ret0;

 L37317: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L37318;
    }
  goto ret0;

 L37318: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L37319;
    }
  goto ret0;

 L37319: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L37320;
    }
  goto ret0;

 L37320: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 13511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3501;  /* avx512bw_pmaddubsw512v8hi_mask */
    }
  goto ret0;

 L41312: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L41313;
    }
  goto ret0;

 L41313: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L41314;
    }
  goto ret0;

 L41314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L41315;
    }
  goto ret0;

 L41315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41316;
    }
  goto ret0;

 L41316: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16542 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3906;  /* avx512vl_permvarv8hi_mask */
    }
  goto ret0;

 L59180: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 147LL:
      goto L42925;
    case 149LL:
      goto L43119;
    case 148LL:
      goto L43411;
    case 182LL:
      goto L51213;
    default:
      break;
    }
  goto ret0;

 L42925: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L42926;
    }
  goto ret0;

 L42926: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L42927;
    }
  goto ret0;

 L42927: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[3] = x3;
      goto L42928;
    }
  goto ret0;

 L42928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8HImode))
    {
      operands[4] = x2;
      goto L42929;
    }
  goto ret0;

 L42929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42930;
    }
  goto ret0;

 L42930: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4118;  /* avx512vl_vpermi2varv8hi3_maskz_1 */
    }
  goto ret0;

 L43119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L43120;
    }
  goto ret0;

 L43120: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L43121;
    }
  goto ret0;

 L43121: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[3] = x3;
      goto L43122;
    }
  goto ret0;

 L43122: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43123;
  goto ret0;

 L43123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43124;
    }
  goto ret0;

 L43124: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4138;  /* avx512vl_vpermi2varv8hi3_mask */
    }
  goto ret0;

 L43411: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L43412;
    }
  goto ret0;

 L43412: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L43413;
    }
  goto ret0;

 L43413: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[3] = x3;
      goto L43414;
    }
  goto ret0;

 L43414: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8HImode))
    {
      operands[4] = x2;
      goto L43415;
    }
 L43608: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43609;
  goto ret0;

 L43415: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43416;
    }
  x2 = XEXP (x1, 1);
  goto L43608;

 L43416: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17307 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4172;  /* avx512vl_vpermt2varv8hi3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43608;

 L43609: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43610;
    }
  goto ret0;

 L43610: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4192;  /* avx512vl_vpermt2varv8hi3_mask */
    }
  goto ret0;

 L51213: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L51214;
    }
  goto ret0;

 L51214: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L51215;
    }
  goto ret0;

 L51215: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51216;
    }
  goto ret0;

 L51216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[4] = x2;
      goto L51217;
    }
  goto ret0;

 L51217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51218;
    }
  goto ret0;

 L51218: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18498 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4644;  /* avx512bw_dbpsadbwv8hi_mask */
    }
  goto ret0;

 L28374: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L28375;
    }
  goto ret0;

 L28375: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L28376;
    }
  goto ret0;

 L28376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L28377;
    }
  goto ret0;

 L28377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28378;
    }
  goto ret0;

 L28378: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V8HImode, operands))))
    {
      return 2710;  /* *addv8hi3 */
    }
 L28780: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (PLUS, V8HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2759;  /* *addv8hi3_mask */
    }
  goto ret0;

 L28389: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L28390;
    }
  goto ret0;

 L28390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L28391;
    }
  goto ret0;

 L28391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L28392;
    }
  goto ret0;

 L28392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28393;
    }
  goto ret0;

 L28393: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V8HImode, operands))))
    {
      return 2712;  /* *subv8hi3 */
    }
 L28789: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && ix86_binary_operator_ok (MINUS, V8HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2760;  /* *subv8hi3_mask */
    }
  goto ret0;

 L29100: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29101;
    }
  goto ret0;

 L29101: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L29102;
    }
  goto ret0;

 L29102: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29103;
    }
  goto ret0;

 L29103: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29104;
    }
  goto ret0;

 L29104: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_PLUS, V8HImode, operands))))
    {
      return 2802;  /* *sse2_ssaddv8hi3_mask */
    }
  goto ret0;

 L29115: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29116;
    }
  goto ret0;

 L29116: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L29117;
    }
  goto ret0;

 L29117: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29118;
    }
  goto ret0;

 L29118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29119;
    }
  goto ret0;

 L29119: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_PLUS, V8HImode, operands))))
    {
      return 2804;  /* *sse2_usaddv8hi3_mask */
    }
  goto ret0;

 L29130: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29131;
    }
  goto ret0;

 L29131: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L29132;
    }
  goto ret0;

 L29132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29133;
    }
  goto ret0;

 L29133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29134;
    }
  goto ret0;

 L29134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (SS_MINUS, V8HImode, operands))))
    {
      return 2806;  /* *sse2_sssubv8hi3_mask */
    }
  goto ret0;

 L29145: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29146;
    }
  goto ret0;

 L29146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L29147;
    }
  goto ret0;

 L29147: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29148;
    }
  goto ret0;

 L29148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29149;
    }
  goto ret0;

 L29149: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (US_MINUS, V8HImode, operands))))
    {
      return 2808;  /* *sse2_ussubv8hi3_mask */
    }
  goto ret0;

 L29190: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29191;
    }
  goto ret0;

 L29191: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L29192;
    }
  goto ret0;

 L29192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29193;
    }
  goto ret0;

 L29193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29194;
    }
  goto ret0;

 L29194: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V8HImode, operands)
   && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 2814;  /* *mulv8hi3_mask */
    }
  goto ret0;

 L29305: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L29306;
  goto ret0;

 L29306: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode)
    goto L59184;
  goto ret0;

 L59184: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case MULT:
      goto L29307;
    case PLUS:
      goto L35705;
    default:
     break;
   }
  goto ret0;

 L29307: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8SImode)
    goto L59186;
  goto ret0;

 L59186: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case SIGN_EXTEND:
      goto L29308;
    case ZERO_EXTEND:
      goto L29332;
    default:
     break;
   }
  goto ret0;

 L29308: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L29309;
    }
  goto ret0;

 L29309: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V8SImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L29310;
  goto ret0;

 L29310: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L29311;
    }
  goto ret0;

 L29311: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L29312;
  goto ret0;

 L29312: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29313;
    }
  goto ret0;

 L29313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29314;
    }
  goto ret0;

 L29314: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V8HImode, operands)
   && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 2824;  /* *smulv8hi3_highpart_mask */
    }
  goto ret0;

 L29332: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L29333;
    }
  goto ret0;

 L29333: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V8SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L29334;
  goto ret0;

 L29334: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L29335;
    }
  goto ret0;

 L29335: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L29336;
  goto ret0;

 L29336: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29337;
    }
  goto ret0;

 L29337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29338;
    }
  goto ret0;

 L29338: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V8HImode, operands)
   && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 2826;  /* *umulv8hi3_highpart_mask */
    }
  goto ret0;

 L35705: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8SImode)
    goto L59188;
  goto ret0;

 L59188: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case PLUS:
      goto L35706;
    case LSHIFTRT:
      goto L37622;
    default:
     break;
   }
  goto ret0;

 L35706: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V8SImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35707;
  goto ret0;

 L35707: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V8HImode))
    {
      operands[1] = x7;
      goto L35708;
    }
  goto ret0;

 L35708: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V8SImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L35709;
  goto ret0;

 L35709: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V8HImode))
    {
      operands[2] = x7;
      goto L35710;
    }
  goto ret0;

 L35710: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V8HImode))
    {
      operands[5] = x5;
      goto L35711;
    }
  goto ret0;

 L35711: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35712;
  goto ret0;

 L35712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L35713;
    }
  goto ret0;

 L35713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L35714;
    }
  goto ret0;

 L35714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (PLUS, V8HImode, operands))))
    {
      return 3463;  /* *sse2_uavgv8hi3_mask */
    }
  goto ret0;

 L37622: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V8SImode
      && GET_CODE (x6) == MULT)
    goto L37623;
  goto ret0;

 L37623: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (GET_MODE (x7) == V8SImode
      && GET_CODE (x7) == SIGN_EXTEND)
    goto L37624;
  goto ret0;

 L37624: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, V8HImode))
    {
      operands[1] = x8;
      goto L37625;
    }
  goto ret0;

 L37625: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_MODE (x7) == V8SImode
      && GET_CODE (x7) == SIGN_EXTEND)
    goto L37626;
  goto ret0;

 L37626: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, V8HImode))
    {
      operands[2] = x8;
      goto L37627;
    }
  goto ret0;

 L37627: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37628;
  goto ret0;

 L37628: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const1_operand (x5, V8HImode))
    {
      operands[3] = x5;
      goto L37629;
    }
  goto ret0;

 L37629: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37630;
  goto ret0;

 L37630: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[4] = x2;
      goto L37631;
    }
  goto ret0;

 L37631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L37632;
    }
  goto ret0;

 L37632: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 13686 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   && ix86_binary_operator_ok (MULT, V8HImode, operands))))
    {
      return 3515;  /* *ssse3_pmulhrswv8hi3_mask */
    }
  goto ret0;

 L29881: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode)
    goto L59190;
  goto ret0;

 L59190: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29882;
    }
 L59191: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L44207;
    }
  goto ret0;

 L29882: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29883;
    }
  x3 = XEXP (x2, 0);
  goto L59191;

 L29883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L29884;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59191;

 L29884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29885;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59191;

 L29885: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 406 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2866;  /* ashrv8hi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59191;

 L44207: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L44208;
    }
  goto ret0;

 L44208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L44209;
    }
  goto ret0;

 L44209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44210;
    }
  goto ret0;

 L44210: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4259;  /* avx512vl_ashrvv8hi_mask */
    }
  goto ret0;

 L30061: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L44432;
    }
  goto ret0;

 L44432: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L44433;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30063;
    }
  goto ret0;

 L44433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L44434;
    }
  goto ret0;

 L44434: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44435;
    }
  goto ret0;

 L44435: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4289;  /* avx512vl_ashlvv8hi_mask */
    }
  goto ret0;

 L30063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L30064;
    }
  goto ret0;

 L30064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30065;
    }
  goto ret0;

 L30065: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 2890;  /* ashlv8hi3_mask */
    }
  goto ret0;

 L30076: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L44447;
    }
  goto ret0;

 L44447: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L44448;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30078;
    }
  goto ret0;

 L44448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L44449;
    }
  goto ret0;

 L44449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44450;
    }
  goto ret0;

 L44450: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4291;  /* avx512vl_lshrvv8hi_mask */
    }
  goto ret0;

 L30078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L30079;
    }
  goto ret0;

 L30079: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30080;
    }
  goto ret0;

 L30080: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 2892;  /* lshrv8hi3_mask */
    }
  goto ret0;

 L31399: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31400;
    }
  goto ret0;

 L31400: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31401;
    }
  goto ret0;

 L31401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L31402;
    }
  goto ret0;

 L31402: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31403;
    }
  goto ret0;

 L31403: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3072;  /* smaxv8hi3_mask */
    }
  goto ret0;

 L31414: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31415;
    }
  goto ret0;

 L31415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31416;
    }
  goto ret0;

 L31416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L31417;
    }
  goto ret0;

 L31417: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31418;
    }
  goto ret0;

 L31418: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3074;  /* sminv8hi3_mask */
    }
  goto ret0;

 L31429: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode)
    goto L59192;
  goto ret0;

 L59192: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31430;
    }
 L59193: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31532;
    }
  goto ret0;

 L31430: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31431;
    }
  x3 = XEXP (x2, 0);
  goto L59193;

 L31431: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L31432;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59193;

 L31432: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31433;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59193;

 L31433: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3076;  /* umaxv8hi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59193;

 L31532: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31533;
    }
  goto ret0;

 L31533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L31534;
    }
  goto ret0;

 L31534: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31535;
    }
  goto ret0;

 L31535: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (UMAX, V8HImode, operands))))
    {
      return 3090;  /* *sse4_1_umaxv8hi3_mask */
    }
  goto ret0;

 L31444: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode)
    goto L59194;
  goto ret0;

 L59194: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31445;
    }
 L59195: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31547;
    }
  goto ret0;

 L31445: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31446;
    }
  x3 = XEXP (x2, 0);
  goto L59195;

 L31446: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L31447;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59195;

 L31447: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31448;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59195;

 L31448: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3078;  /* uminv8hi3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59195;

 L31547: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31548;
    }
  goto ret0;

 L31548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L31549;
    }
  goto ret0;

 L31549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31550;
    }
  goto ret0;

 L31550: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (UMIN, V8HImode, operands))))
    {
      return 3092;  /* *sse4_1_uminv8hi3_mask */
    }
  goto ret0;

 L32155: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode)
    goto L59196;
  goto ret0;

 L59196: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32156;
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L32675;
    }
  goto ret0;

 L32156: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L32157;
    }
  goto ret0;

 L32157: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L32158;
    }
  goto ret0;

 L32158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L32159;
    }
  goto ret0;

 L32159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32160;
    }
  goto ret0;

 L32160: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 3178;  /* *andnotv8hi3 */
    }
 L32348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10896 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3198;  /* *andnotv8hi3_mask */
    }
  goto ret0;

 L32675: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L32676;
    }
  goto ret0;

 L32676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L32677;
    }
  goto ret0;

 L32677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32678;
    }
  goto ret0;

 L32678: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V8HImode, operands))))
    {
      return 3242;  /* andv8hi3_mask */
    }
  goto ret0;

 L32689: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L32690;
    }
  goto ret0;

 L32690: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L32691;
    }
  goto ret0;

 L32691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L32692;
    }
  goto ret0;

 L32692: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32693;
    }
  goto ret0;

 L32693: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V8HImode, operands))))
    {
      return 3244;  /* iorv8hi3_mask */
    }
  goto ret0;

 L32704: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L32705;
    }
  goto ret0;

 L32705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L32706;
    }
  goto ret0;

 L32706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L32707;
    }
  goto ret0;

 L32707: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32708;
    }
  goto ret0;

 L32708: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V8HImode, operands))))
    {
      return 3246;  /* xorv8hi3_mask */
    }
  goto ret0;

 L33332: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode)
    goto L59198;
  goto ret0;

 L59198: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L33333;
    case US_TRUNCATE:
      goto L38196;
    case UNSPEC:
      goto L59201;
    default:
     break;
   }
  goto ret0;

 L33333: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L33334;
    }
  goto ret0;

 L33334: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == SS_TRUNCATE)
    goto L33335;
  goto ret0;

 L33335: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L33336;
    }
  goto ret0;

 L33336: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L33337;
    }
  goto ret0;

 L33337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L33338;
    }
  goto ret0;

 L33338: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11097 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 3330;  /* sse2_packssdw_mask */
    }
  goto ret0;

 L38196: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L38197;
    }
  goto ret0;

 L38197: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == US_TRUNCATE)
    goto L38198;
  goto ret0;

 L38198: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L38199;
    }
  goto ret0;

 L38199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L38200;
    }
  goto ret0;

 L38200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L38201;
    }
  goto ret0;

 L38201: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14112 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
    {
      return 3597;  /* sse4_1_packusdw_mask */
    }
  goto ret0;

 L59201: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 142)
    goto L44678;
  goto ret0;

 L44678: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L44679;
    }
  goto ret0;

 L44679: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L44680;
    }
  goto ret0;

 L44680: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V4HImode))
    {
      operands[3] = x3;
      goto L44681;
    }
  goto ret0;

 L44681: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[4] = x2;
      goto L44682;
    }
  goto ret0;

 L44682: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L44683;
    }
  goto ret0;

 L44683: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
((TARGET_F16C || TARGET_AVX512VL) && TARGET_AVX512VL)))
    {
      return 4323;  /* *vcvtps2ph_mask */
    }
  goto ret0;

 L34103: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16HImode:
      goto L59202;
    case V8HImode:
      goto L59203;
    default:
      break;
    }
  goto ret0;

 L59202: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L34104;
  goto ret0;

 L34104: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L34105;
    }
  goto ret0;

 L34105: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L34106;
    }
  goto ret0;

 L34106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L34107;
  goto ret0;

 L34107: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59204;
  goto ret0;

 L59204: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 4LL:
        goto L34108;
      case 0LL:
        goto L34274;
      default:
        break;
      }
  goto ret0;

 L34108: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34109;
  goto ret0;

 L34109: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34110;
  goto ret0;

 L34110: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34111;
  goto ret0;

 L34111: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34112;
  goto ret0;

 L34112: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34113;
  goto ret0;

 L34113: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34114;
  goto ret0;

 L34114: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34115;
  goto ret0;

 L34115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L34116;
    }
  goto ret0;

 L34116: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34117;
    }
  goto ret0;

 L34117: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11374 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 3354;  /* vec_interleave_highv8hi_mask */
    }
  goto ret0;

 L34274: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34275;
  goto ret0;

 L34275: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34276;
  goto ret0;

 L34276: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34277;
  goto ret0;

 L34277: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34278;
  goto ret0;

 L34278: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34279;
  goto ret0;

 L34279: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34280;
  goto ret0;

 L34280: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34281;
  goto ret0;

 L34281: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L34282;
    }
  goto ret0;

 L34282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34283;
    }
  goto ret0;

 L34283: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11442 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
    {
      return 3360;  /* vec_interleave_lowv8hi_mask */
    }
  goto ret0;

 L59203: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L35328;
    }
  goto ret0;

 L35328: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L35329;
  goto ret0;

 L35329: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59206;
  goto ret0;

 L59206: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35330;
    }
 L59207: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L35423;
  goto ret0;

 L35330: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35331;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35331: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35332;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35332: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35333;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35333: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35334;
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35334: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35335;
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35335: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L35336;
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35336: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L35337;
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[6] = x2;
      goto L35338;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L35339;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35339: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
    {
      return 3428;  /* sse2_pshuflw_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59207;

 L35423: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35424;
  goto ret0;

 L35424: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35425;
  goto ret0;

 L35425: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35426;
  goto ret0;

 L35426: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35427;
    }
  goto ret0;

 L35427: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35428;
    }
  goto ret0;

 L35428: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35429;
    }
  goto ret0;

 L35429: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35430;
    }
  goto ret0;

 L35430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[6] = x2;
      goto L35431;
    }
  goto ret0;

 L35431: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L35432;
    }
  goto ret0;

 L35432: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12549 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
    {
      return 3434;  /* sse2_pshufhw_1_mask */
    }
  goto ret0;

 L34516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode)
    goto L59209;
  goto ret0;

 L59209: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41799;
  if (nonimmediate_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L34517;
    }
 L59210: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L41932;
    }
  goto ret0;

 L41799: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L41800;
    }
  goto ret0;

 L41800: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41801;
  goto ret0;

 L41801: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41802;
  goto ret0;

 L41802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L41803;
    }
  goto ret0;

 L41803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41804;
    }
  goto ret0;

 L41804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3960;  /* avx512vl_vec_dupv8hi_mask */
    }
  goto ret0;

 L34517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L34518;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59210;

 L34518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34519;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59210;

 L34519: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ((unsigned) exact_log2 (INTVAL (operands[3]))
       < GET_MODE_NUNITS (V8HImode))))
    {
      return 3374;  /* sse2_pinsrw */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59210;

 L41932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L41933;
    }
  goto ret0;

 L41933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41934;
    }
  goto ret0;

 L41934: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3980;  /* avx512vl_vec_dup_gprv8hi_mask */
    }
  goto ret0;

 L37962: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L37963;
    }
  goto ret0;

 L37963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L37964;
    }
  goto ret0;

 L37964: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L37965;
    }
  goto ret0;

 L37965: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3563;  /* absv8hi2_mask */
    }
  goto ret0;

 L38319: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L38320;
  goto ret0;

 L38320: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38321;
    }
  goto ret0;

 L38321: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L38322;
  goto ret0;

 L38322: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38323;
  goto ret0;

 L38323: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38324;
  goto ret0;

 L38324: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38325;
  goto ret0;

 L38325: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38326;
  goto ret0;

 L38326: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38327;
  goto ret0;

 L38327: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38328;
  goto ret0;

 L38328: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38329;
  goto ret0;

 L38329: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L38330;
  goto ret0;

 L38330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L38331;
    }
  goto ret0;

 L38331: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38332;
    }
  goto ret0;

 L38332: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512BW && TARGET_AVX512VL)))
    {
      return 3614;  /* sse4_1_sign_extendv8qiv8hi2_mask */
    }
  goto ret0;

 L38351: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L38352;
  goto ret0;

 L38352: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38353;
    }
  goto ret0;

 L38353: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L38354;
  goto ret0;

 L38354: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38355;
  goto ret0;

 L38355: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38356;
  goto ret0;

 L38356: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38357;
  goto ret0;

 L38357: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38358;
  goto ret0;

 L38358: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38359;
  goto ret0;

 L38359: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38360;
  goto ret0;

 L38360: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38361;
  goto ret0;

 L38361: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L38362;
  goto ret0;

 L38362: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L38363;
    }
  goto ret0;

 L38363: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38364;
    }
  goto ret0;

 L38364: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512BW && TARGET_AVX512VL)))
    {
      return 3616;  /* sse4_1_zero_extendv8qiv8hi2_mask */
    }
  goto ret0;

 L11677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L11678;
    }
  x2 = XEXP (x1, 0);
  goto L59138;

 L11678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11679;
    }
  x2 = XEXP (x1, 0);
  goto L59138;

 L11679: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1035;  /* avx512vl_loadv8hi_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59138;

 L11803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L11804;
    }
  goto ret0;

 L11804: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11805;
    }
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38222;
    }
  goto ret0;

 L11805: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1053;  /* avx512vl_blendmv8hi */
    }
  goto ret0;

 L38222: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14149 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3600;  /* sse4_1_pblendw */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_45 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  switch (GET_CODE (x4))
    {
    case PLUS:
      goto L36453;
    case SS_PLUS:
      goto L36534;
    case MINUS:
      goto L36615;
    case SS_MINUS:
      goto L36696;
    default:
     break;
   }
  goto ret0;

 L36453: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36454;
  goto ret0;

 L36454: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L36455;
    }
  goto ret0;

 L36455: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36456;
  goto ret0;

 L36456: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36457;
  goto ret0;

 L36457: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36458;
  goto ret0;

 L36458: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36459;
  goto ret0;

 L36459: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36460;
  goto ret0;

 L36460: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36461;
  goto ret0;

 L36461: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36462;
  goto ret0;

 L36462: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36463;
  goto ret0;

 L36463: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36464;
  goto ret0;

 L36464: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36465;
  goto ret0;

 L36465: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36466;
  goto ret0;

 L36466: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36467;
  goto ret0;

 L36467: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36468;
  goto ret0;

 L36468: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36469;
  goto ret0;

 L36469: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36470;
  goto ret0;

 L36470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36471;
  goto ret0;

 L36471: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36472;
  goto ret0;

 L36472: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36473;
  goto ret0;

 L36473: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36474;
  goto ret0;

 L36474: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36475;
  goto ret0;

 L36475: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36476;
  goto ret0;

 L36476: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36477;
  goto ret0;

 L36477: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36478;
  goto ret0;

 L36478: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36479;
  goto ret0;

 L36479: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36480;
  goto ret0;

 L36480: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36481;
  goto ret0;

 L36481: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36482;
  goto ret0;

 L36482: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36483;
  goto ret0;

 L36483: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36484;
  goto ret0;

 L36484: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36485;
  goto ret0;

 L36485: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36486;
  goto ret0;

 L36486: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36487;
  goto ret0;

 L36487: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36488;
  goto ret0;

 L36488: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36489;
  goto ret0;

 L36489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36490;
  goto ret0;

 L36490: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36491;
  goto ret0;

 L36491: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36492;
  goto ret0;

 L36492: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36493;
  goto ret0;

 L36493: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L36494;
    }
  goto ret0;

 L36494: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36495;
  goto ret0;

 L36495: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36496;
  goto ret0;

 L36496: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36497;
  goto ret0;

 L36497: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36498;
  goto ret0;

 L36498: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36499;
  goto ret0;

 L36499: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36500;
  goto ret0;

 L36500: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36501;
  goto ret0;

 L36501: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36502;
  goto ret0;

 L36502: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36503;
  goto ret0;

 L36503: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36504;
  goto ret0;

 L36504: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36505;
  goto ret0;

 L36505: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36506;
  goto ret0;

 L36506: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36507;
  goto ret0;

 L36507: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36508;
  goto ret0;

 L36508: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36509;
  goto ret0;

 L36509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36510;
  goto ret0;

 L36510: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36511;
  goto ret0;

 L36511: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36512;
  goto ret0;

 L36512: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36513;
  goto ret0;

 L36513: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36514;
  goto ret0;

 L36514: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36515;
  goto ret0;

 L36515: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36516;
  goto ret0;

 L36516: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36517;
  goto ret0;

 L36517: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36518;
  goto ret0;

 L36518: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36519;
  goto ret0;

 L36519: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L36520;
  goto ret0;

 L36520: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36521;
  goto ret0;

 L36521: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36522;
  goto ret0;

 L36522: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36523;
  goto ret0;

 L36523: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36524;
  goto ret0;

 L36524: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36525;
  goto ret0;

 L36525: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36526;
  goto ret0;

 L36526: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36527;
  goto ret0;

 L36527: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3485;  /* ssse3_phaddwv8hi3 */
    }
  goto ret0;

 L36534: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36535;
  goto ret0;

 L36535: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L36536;
    }
  goto ret0;

 L36536: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36537;
  goto ret0;

 L36537: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36538;
  goto ret0;

 L36538: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36539;
  goto ret0;

 L36539: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36540;
  goto ret0;

 L36540: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36541;
  goto ret0;

 L36541: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36542;
  goto ret0;

 L36542: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36543;
  goto ret0;

 L36543: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36544;
  goto ret0;

 L36544: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36545;
  goto ret0;

 L36545: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36546;
  goto ret0;

 L36546: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36547;
  goto ret0;

 L36547: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36548;
  goto ret0;

 L36548: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36549;
  goto ret0;

 L36549: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36550;
  goto ret0;

 L36550: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36551;
  goto ret0;

 L36551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36552;
  goto ret0;

 L36552: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36553;
  goto ret0;

 L36553: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36554;
  goto ret0;

 L36554: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36555;
  goto ret0;

 L36555: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36556;
  goto ret0;

 L36556: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36557;
  goto ret0;

 L36557: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36558;
  goto ret0;

 L36558: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36559;
  goto ret0;

 L36559: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36560;
  goto ret0;

 L36560: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36561;
  goto ret0;

 L36561: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36562;
  goto ret0;

 L36562: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36563;
  goto ret0;

 L36563: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36564;
  goto ret0;

 L36564: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36565;
  goto ret0;

 L36565: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36566;
  goto ret0;

 L36566: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36567;
  goto ret0;

 L36567: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36568;
  goto ret0;

 L36568: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36569;
  goto ret0;

 L36569: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36570;
  goto ret0;

 L36570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36571;
  goto ret0;

 L36571: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36572;
  goto ret0;

 L36572: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36573;
  goto ret0;

 L36573: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36574;
  goto ret0;

 L36574: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L36575;
    }
  goto ret0;

 L36575: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36576;
  goto ret0;

 L36576: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36577;
  goto ret0;

 L36577: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36578;
  goto ret0;

 L36578: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36579;
  goto ret0;

 L36579: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36580;
  goto ret0;

 L36580: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36581;
  goto ret0;

 L36581: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36582;
  goto ret0;

 L36582: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36583;
  goto ret0;

 L36583: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36584;
  goto ret0;

 L36584: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36585;
  goto ret0;

 L36585: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36586;
  goto ret0;

 L36586: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36587;
  goto ret0;

 L36587: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36588;
  goto ret0;

 L36588: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36589;
  goto ret0;

 L36589: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36590;
  goto ret0;

 L36590: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36591;
  goto ret0;

 L36591: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36592;
  goto ret0;

 L36592: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36593;
  goto ret0;

 L36593: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36594;
  goto ret0;

 L36594: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36595;
  goto ret0;

 L36595: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36596;
  goto ret0;

 L36596: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36597;
  goto ret0;

 L36597: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36598;
  goto ret0;

 L36598: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36599;
  goto ret0;

 L36599: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36600;
  goto ret0;

 L36600: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_PLUS)
    goto L36601;
  goto ret0;

 L36601: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36602;
  goto ret0;

 L36602: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36603;
  goto ret0;

 L36603: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36604;
  goto ret0;

 L36604: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36605;
  goto ret0;

 L36605: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36606;
  goto ret0;

 L36606: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36607;
  goto ret0;

 L36607: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36608;
  goto ret0;

 L36608: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3486;  /* ssse3_phaddswv8hi3 */
    }
  goto ret0;

 L36615: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36616;
  goto ret0;

 L36616: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L36617;
    }
  goto ret0;

 L36617: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36618;
  goto ret0;

 L36618: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36619;
  goto ret0;

 L36619: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36620;
  goto ret0;

 L36620: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36621;
  goto ret0;

 L36621: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36622;
  goto ret0;

 L36622: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36623;
  goto ret0;

 L36623: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36624;
  goto ret0;

 L36624: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36625;
  goto ret0;

 L36625: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36626;
  goto ret0;

 L36626: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36627;
  goto ret0;

 L36627: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36628;
  goto ret0;

 L36628: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36629;
  goto ret0;

 L36629: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36630;
  goto ret0;

 L36630: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36631;
  goto ret0;

 L36631: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36632;
  goto ret0;

 L36632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36633;
  goto ret0;

 L36633: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36634;
  goto ret0;

 L36634: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36635;
  goto ret0;

 L36635: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36636;
  goto ret0;

 L36636: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36637;
  goto ret0;

 L36637: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36638;
  goto ret0;

 L36638: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36639;
  goto ret0;

 L36639: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36640;
  goto ret0;

 L36640: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36641;
  goto ret0;

 L36641: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36642;
  goto ret0;

 L36642: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36643;
  goto ret0;

 L36643: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36644;
  goto ret0;

 L36644: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36645;
  goto ret0;

 L36645: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36646;
  goto ret0;

 L36646: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36647;
  goto ret0;

 L36647: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36648;
  goto ret0;

 L36648: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36649;
  goto ret0;

 L36649: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36650;
  goto ret0;

 L36650: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36651;
  goto ret0;

 L36651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36652;
  goto ret0;

 L36652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36653;
  goto ret0;

 L36653: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36654;
  goto ret0;

 L36654: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36655;
  goto ret0;

 L36655: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L36656;
    }
  goto ret0;

 L36656: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36657;
  goto ret0;

 L36657: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36658;
  goto ret0;

 L36658: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36659;
  goto ret0;

 L36659: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36660;
  goto ret0;

 L36660: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36661;
  goto ret0;

 L36661: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36662;
  goto ret0;

 L36662: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36663;
  goto ret0;

 L36663: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36664;
  goto ret0;

 L36664: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36665;
  goto ret0;

 L36665: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36666;
  goto ret0;

 L36666: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36667;
  goto ret0;

 L36667: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36668;
  goto ret0;

 L36668: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36669;
  goto ret0;

 L36669: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36670;
  goto ret0;

 L36670: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36671;
  goto ret0;

 L36671: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36672;
  goto ret0;

 L36672: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36673;
  goto ret0;

 L36673: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36674;
  goto ret0;

 L36674: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36675;
  goto ret0;

 L36675: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36676;
  goto ret0;

 L36676: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36677;
  goto ret0;

 L36677: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36678;
  goto ret0;

 L36678: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36679;
  goto ret0;

 L36679: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36680;
  goto ret0;

 L36680: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36681;
  goto ret0;

 L36681: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L36682;
  goto ret0;

 L36682: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36683;
  goto ret0;

 L36683: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36684;
  goto ret0;

 L36684: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36685;
  goto ret0;

 L36685: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36686;
  goto ret0;

 L36686: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36687;
  goto ret0;

 L36687: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36688;
  goto ret0;

 L36688: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36689;
  goto ret0;

 L36689: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3487;  /* ssse3_phsubwv8hi3 */
    }
  goto ret0;

 L36696: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36697;
  goto ret0;

 L36697: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L36698;
    }
  goto ret0;

 L36698: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36699;
  goto ret0;

 L36699: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36700;
  goto ret0;

 L36700: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36701;
  goto ret0;

 L36701: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36702;
  goto ret0;

 L36702: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36703;
  goto ret0;

 L36703: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36704;
  goto ret0;

 L36704: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36705;
  goto ret0;

 L36705: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36706;
  goto ret0;

 L36706: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36707;
  goto ret0;

 L36707: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36708;
  goto ret0;

 L36708: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36709;
  goto ret0;

 L36709: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36710;
  goto ret0;

 L36710: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36711;
  goto ret0;

 L36711: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36712;
  goto ret0;

 L36712: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36713;
  goto ret0;

 L36713: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36714;
  goto ret0;

 L36714: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36715;
  goto ret0;

 L36715: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36716;
  goto ret0;

 L36716: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36717;
  goto ret0;

 L36717: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36718;
  goto ret0;

 L36718: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36719;
  goto ret0;

 L36719: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36720;
  goto ret0;

 L36720: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36721;
  goto ret0;

 L36721: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36722;
  goto ret0;

 L36722: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36723;
  goto ret0;

 L36723: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36724;
  goto ret0;

 L36724: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36725;
  goto ret0;

 L36725: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36726;
  goto ret0;

 L36726: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36727;
  goto ret0;

 L36727: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36728;
  goto ret0;

 L36728: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36729;
  goto ret0;

 L36729: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36730;
  goto ret0;

 L36730: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36731;
  goto ret0;

 L36731: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36732;
  goto ret0;

 L36732: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36733;
  goto ret0;

 L36733: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36734;
  goto ret0;

 L36734: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36735;
  goto ret0;

 L36735: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36736;
  goto ret0;

 L36736: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L36737;
    }
  goto ret0;

 L36737: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36738;
  goto ret0;

 L36738: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36739;
  goto ret0;

 L36739: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36740;
  goto ret0;

 L36740: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36741;
  goto ret0;

 L36741: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36742;
  goto ret0;

 L36742: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36743;
  goto ret0;

 L36743: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36744;
  goto ret0;

 L36744: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36745;
  goto ret0;

 L36745: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36746;
  goto ret0;

 L36746: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36747;
  goto ret0;

 L36747: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36748;
  goto ret0;

 L36748: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36749;
  goto ret0;

 L36749: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36750;
  goto ret0;

 L36750: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36751;
  goto ret0;

 L36751: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36752;
  goto ret0;

 L36752: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36753;
  goto ret0;

 L36753: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36754;
  goto ret0;

 L36754: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36755;
  goto ret0;

 L36755: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36756;
  goto ret0;

 L36756: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36757;
  goto ret0;

 L36757: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36758;
  goto ret0;

 L36758: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36759;
  goto ret0;

 L36759: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36760;
  goto ret0;

 L36760: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36761;
  goto ret0;

 L36761: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36762;
  goto ret0;

 L36762: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SS_MINUS)
    goto L36763;
  goto ret0;

 L36763: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36764;
  goto ret0;

 L36764: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36765;
  goto ret0;

 L36765: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36766;
  goto ret0;

 L36766: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36767;
  goto ret0;

 L36767: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36768;
  goto ret0;

 L36768: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36769;
  goto ret0;

 L36769: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36770;
  goto ret0;

 L36770: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3488;  /* ssse3_phsubswv8hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_46 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L27276;
    case TRUNCATE:
      goto L27283;
    case US_TRUNCATE:
      goto L27290;
    case VEC_MERGE:
      goto L27411;
    case VEC_CONCAT:
      goto L36451;
    case UNSPEC:
      goto L59231;
    default:
     break;
   }
  goto ret0;

 L27276: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L59232;
    case V4SImode:
      goto L59233;
    default:
      break;
    }
  goto ret0;

 L59232: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L27277;
    }
  goto ret0;

 L27277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L27278;
    }
  goto ret0;

 L27278: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2629;  /* *avx512vl_ss_truncatev4div4hi2 */
    }
  goto ret0;

 L59233: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L33325;
    }
  goto ret0;

 L33325: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == SS_TRUNCATE)
    goto L33326;
  if (const0_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L27320;
    }
  goto ret0;

 L33326: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L33327;
    }
  goto ret0;

 L33327: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11097 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3329;  /* sse2_packssdw */
    }
  goto ret0;

 L27320: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2635;  /* *avx512vl_ss_truncatev4siv4hi2 */
    }
  goto ret0;

 L27283: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L59234;
    case V4SImode:
      goto L59235;
    default:
      break;
    }
  goto ret0;

 L59234: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L27284;
    }
  goto ret0;

 L27284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L27285;
    }
  goto ret0;

 L27285: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2630;  /* *avx512vl_truncatev4div4hi2 */
    }
  goto ret0;

 L59235: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L27326;
    }
  goto ret0;

 L27326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L27327;
    }
  goto ret0;

 L27327: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2636;  /* *avx512vl_truncatev4siv4hi2 */
    }
  goto ret0;

 L27290: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L59236;
    case V4SImode:
      goto L59237;
    default:
      break;
    }
  goto ret0;

 L59236: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L27291;
    }
  goto ret0;

 L27291: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L27292;
    }
  goto ret0;

 L27292: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2631;  /* *avx512vl_us_truncatev4div4hi2 */
    }
  goto ret0;

 L59237: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L38188;
    }
  goto ret0;

 L38188: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == US_TRUNCATE)
    goto L38189;
  if (const0_operand (x2, V4HImode))
    {
      operands[2] = x2;
      goto L27334;
    }
  goto ret0;

 L38189: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L38190;
    }
  goto ret0;

 L38190: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14112 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1 && 1))
    {
      return 3596;  /* sse4_1_packusdw */
    }
  goto ret0;

 L27334: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2637;  /* *avx512vl_us_truncatev4siv4hi2 */
    }
  goto ret0;

 L27411: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode)
    goto L59238;
  goto ret0;

 L59238: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27412;
    case TRUNCATE:
      goto L27431;
    case US_TRUNCATE:
      goto L27450;
    default:
     break;
   }
  goto ret0;

 L27412: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L59241;
    case V4DImode:
      goto L59242;
    default:
      break;
    }
  goto ret0;

 L59241: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L27413;
    }
  goto ret0;

 L27413: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27414;
  goto ret0;

 L27414: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27415;
    }
  goto ret0;

 L27415: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27416;
  goto ret0;

 L27416: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27417;
  goto ret0;

 L27417: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27418;
  goto ret0;

 L27418: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27419;
  goto ret0;

 L27419: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27420;
  goto ret0;

 L27420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27421;
    }
  goto ret0;

 L27421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 4)
    goto L27422;
  goto ret0;

 L27422: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27423;
  goto ret0;

 L27423: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27424;
  goto ret0;

 L27424: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27425;
  goto ret0;

 L27425: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8929 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2644;  /* avx512vl_ss_truncatev4siv4hi2_mask */
    }
  goto ret0;

 L59242: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L27470;
    }
  goto ret0;

 L27470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27471;
  goto ret0;

 L27471: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27472;
    }
  goto ret0;

 L27472: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27473;
  goto ret0;

 L27473: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27474;
  goto ret0;

 L27474: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27475;
  goto ret0;

 L27475: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27476;
  goto ret0;

 L27476: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27477;
  goto ret0;

 L27477: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27478;
    }
  goto ret0;

 L27478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 4)
    goto L27479;
  goto ret0;

 L27479: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27480;
  goto ret0;

 L27480: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27481;
  goto ret0;

 L27481: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27482;
  goto ret0;

 L27482: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8929 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2647;  /* avx512vl_ss_truncatev4div4hi2_mask */
    }
  goto ret0;

 L27431: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L59243;
    case V4DImode:
      goto L59244;
    default:
      break;
    }
  goto ret0;

 L59243: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L27432;
    }
  goto ret0;

 L27432: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27433;
  goto ret0;

 L27433: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27434;
    }
  goto ret0;

 L27434: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27435;
  goto ret0;

 L27435: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27436;
  goto ret0;

 L27436: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27437;
  goto ret0;

 L27437: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27438;
  goto ret0;

 L27438: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27439;
  goto ret0;

 L27439: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27440;
    }
  goto ret0;

 L27440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 4)
    goto L27441;
  goto ret0;

 L27441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27442;
  goto ret0;

 L27442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27443;
  goto ret0;

 L27443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27444;
  goto ret0;

 L27444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8929 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2645;  /* avx512vl_truncatev4siv4hi2_mask */
    }
  goto ret0;

 L59244: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L27489;
    }
  goto ret0;

 L27489: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27490;
  goto ret0;

 L27490: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27491;
    }
  goto ret0;

 L27491: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27492;
  goto ret0;

 L27492: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27493;
  goto ret0;

 L27493: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27494;
  goto ret0;

 L27494: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27495;
  goto ret0;

 L27495: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27496;
  goto ret0;

 L27496: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27497;
    }
  goto ret0;

 L27497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 4)
    goto L27498;
  goto ret0;

 L27498: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27499;
  goto ret0;

 L27499: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27500;
  goto ret0;

 L27500: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27501;
  goto ret0;

 L27501: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8929 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2648;  /* avx512vl_truncatev4div4hi2_mask */
    }
  goto ret0;

 L27450: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L59245;
    case V4DImode:
      goto L59246;
    default:
      break;
    }
  goto ret0;

 L59245: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L27451;
    }
  goto ret0;

 L27451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27452;
  goto ret0;

 L27452: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27453;
    }
  goto ret0;

 L27453: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27454;
  goto ret0;

 L27454: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27455;
  goto ret0;

 L27455: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27456;
  goto ret0;

 L27456: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27457;
  goto ret0;

 L27457: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27458;
  goto ret0;

 L27458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27459;
    }
  goto ret0;

 L27459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 4)
    goto L27460;
  goto ret0;

 L27460: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27461;
  goto ret0;

 L27461: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27462;
  goto ret0;

 L27462: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27463;
  goto ret0;

 L27463: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8929 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2646;  /* avx512vl_us_truncatev4siv4hi2_mask */
    }
  goto ret0;

 L59246: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L27508;
    }
  goto ret0;

 L27508: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27509;
  goto ret0;

 L27509: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27510;
    }
  goto ret0;

 L27510: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27511;
  goto ret0;

 L27511: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27512;
  goto ret0;

 L27512: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27513;
  goto ret0;

 L27513: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27514;
  goto ret0;

 L27514: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27515;
  goto ret0;

 L27515: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27516;
    }
  goto ret0;

 L27516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 4)
    goto L27517;
  goto ret0;

 L27517: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27518;
  goto ret0;

 L27518: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27519;
  goto ret0;

 L27519: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27520;
  goto ret0;

 L27520: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8929 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2649;  /* avx512vl_us_truncatev4div4hi2_mask */
    }
  goto ret0;

 L36451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36452;
  goto ret0;

 L36452: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode)
    goto L59247;
  goto ret0;

 L59247: ATTRIBUTE_UNUSED_LABEL
  return recog_45 (x0, insn, pnum_clobbers);

 L59231: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 142)
    goto L44669;
  goto ret0;

 L44669: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L44670;
    }
  goto ret0;

 L44670: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L44671;
    }
  goto ret0;

 L44671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4HImode))
    {
      operands[3] = x2;
      goto L44672;
    }
  goto ret0;

 L44672: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
((TARGET_F16C || TARGET_AVX512VL) && 1))
    {
      return 4322;  /* *vcvtps2ph */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_47 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11676;
    case UNSPEC:
      goto L59127;
    case VEC_CONCAT:
      goto L27275;
    case PLUS:
      goto L28367;
    case MINUS:
      goto L28382;
    case SS_PLUS:
      goto L29093;
    case US_PLUS:
      goto L29108;
    case SS_MINUS:
      goto L29123;
    case US_MINUS:
      goto L29138;
    case MULT:
      goto L29183;
    case TRUNCATE:
      goto L29294;
    case ASHIFTRT:
      goto L29841;
    case ASHIFT:
      goto L30054;
    case LSHIFTRT:
      goto L30069;
    case SMAX:
      goto L31392;
    case SMIN:
      goto L31407;
    case UMAX:
      goto L31422;
    case UMIN:
      goto L31437;
    case EQ:
      goto L31800;
    case GT:
      goto L32016;
    case AND:
      goto L32147;
    case IOR:
      goto L32682;
    case XOR:
      goto L32697;
    case VEC_SELECT:
      goto L34087;
    case ABS:
      goto L37838;
    case SIGN_EXTEND:
      goto L38304;
    case ZERO_EXTEND:
      goto L38336;
    case IF_THEN_ELSE:
      goto L40037;
    case ROTATE:
      goto L40603;
    case ROTATERT:
      goto L40627;
    case VEC_DUPLICATE:
      goto L41077;
    default:
     break;
   }
 L59118: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_int_operator (x1, V8HImode))
    {
      operands[1] = x1;
      goto L40851;
    }
 L59119: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_uns_operator (x1, V8HImode))
    {
      operands[1] = x1;
      goto L40875;
    }
  goto ret0;

 L11676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59139;
 L22012: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L22013;
    }
  goto ret0;

 L59139: ATTRIBUTE_UNUSED_LABEL
  tem = recog_44 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L22012;

 L22013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L22014;
    }
  goto ret0;

 L22014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L22015;
    }
  goto ret0;

 L22015: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2194;  /* *avx512vl_cvtmask2wv8hi */
    }
  goto ret0;

 L59127: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L59211;
    case 2:
      goto L59212;
    case 3:
      goto L59216;
    default:
      break;
    }
  goto ret0;

 L59211: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12164;
    case 119LL:
      goto L38247;
    case 124LL:
      goto L40900;
    default:
      break;
    }
  goto ret0;

 L12164: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L12165;
    }
  goto ret0;

 L12165: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1352 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1106;  /* *avx512vl_loaddquv8hi */
    }
  goto ret0;

 L38247: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L38248;
    }
  goto ret0;

 L38248: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14209 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3604;  /* sse4_1_phminposuw */
    }
  goto ret0;

 L40900: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (ix86_comparison_uns_operator (x2, V8HImode))
    {
      operands[1] = x2;
      goto L40901;
    }
  goto ret0;

 L40901: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L40902;
    }
  goto ret0;

 L40902: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[3] = x3;
      goto L40903;
    }
  goto ret0;

 L40903: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16289 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3847;  /* xop_maskcmp_uns2v8hi3 */
    }
  goto ret0;

 L59212: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 183LL:
      goto L37309;
    case 108LL:
      goto L37719;
    case 143LL:
      goto L41305;
    default:
      break;
    }
  goto ret0;

 L37309: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L37310;
    }
  goto ret0;

 L37310: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L37311;
    }
  goto ret0;

 L37311: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3500;  /* avx512bw_pmaddubsw512v8hi */
    }
  goto ret0;

 L37719: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L37720;
    }
  goto ret0;

 L37720: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L37721;
    }
  goto ret0;

 L37721: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13755 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3527;  /* ssse3_psignv8hi3 */
    }
  goto ret0;

 L41305: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L41306;
    }
  goto ret0;

 L41306: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L41307;
    }
  goto ret0;

 L41307: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16542 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && 1) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3905;  /* avx512vl_permvarv8hi */
    }
  goto ret0;

 L59216: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 125LL:
      goto L40928;
    case 147LL:
      goto L42917;
    case 148LL:
      goto L43403;
    case 182LL:
      goto L51205;
    default:
      break;
    }
  goto ret0;

 L40928: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L40929;
    }
  goto ret0;

 L40929: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L40930;
    }
  goto ret0;

 L40930: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L40931;
    }
  goto ret0;

 L40931: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3851;  /* xop_pcom_tfv8hi3 */
    }
  goto ret0;

 L42917: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L42918;
    }
  goto ret0;

 L42918: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L42919;
    }
  goto ret0;

 L42919: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L42920;
    }
  goto ret0;

 L42920: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4117;  /* avx512vl_vpermi2varv8hi3 */
    }
  goto ret0;

 L43403: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L43404;
    }
  goto ret0;

 L43404: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L43405;
    }
  goto ret0;

 L43405: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L43406;
    }
  goto ret0;

 L43406: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17307 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4171;  /* avx512vl_vpermt2varv8hi3 */
    }
  goto ret0;

 L51205: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L51206;
    }
  goto ret0;

 L51206: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L51207;
    }
  goto ret0;

 L51207: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51208;
    }
  goto ret0;

 L51208: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18498 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4643;  /* *avx512bw_dbpsadbwv8hi */
    }
  goto ret0;

 L27275: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4HImode:
      goto L59221;
    case V2HImode:
      goto L59224;
    default:
      break;
    }
  goto ret0;

 L59221: ATTRIBUTE_UNUSED_LABEL
  return recog_46 (x0, insn, pnum_clobbers);

 L59224: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L27297;
    case TRUNCATE:
      goto L27304;
    case US_TRUNCATE:
      goto L27311;
    case VEC_MERGE:
      goto L27693;
    default:
     break;
   }
  goto ret0;

 L27297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27298;
    }
  goto ret0;

 L27298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V6HImode))
    {
      operands[2] = x2;
      goto L27299;
    }
  goto ret0;

 L27299: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2632;  /* *avx512vl_ss_truncatev2div2hi2 */
    }
  goto ret0;

 L27304: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27305;
    }
  goto ret0;

 L27305: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V6HImode))
    {
      operands[2] = x2;
      goto L27306;
    }
  goto ret0;

 L27306: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2633;  /* *avx512vl_truncatev2div2hi2 */
    }
  goto ret0;

 L27311: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27312;
    }
  goto ret0;

 L27312: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V6HImode))
    {
      operands[2] = x2;
      goto L27313;
    }
  goto ret0;

 L27313: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8894 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2634;  /* *avx512vl_us_truncatev2div2hi2 */
    }
  goto ret0;

 L27693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode)
    goto L59251;
  goto ret0;

 L59251: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27694;
    case TRUNCATE:
      goto L27713;
    case US_TRUNCATE:
      goto L27732;
    default:
     break;
   }
  goto ret0;

 L27694: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27695;
    }
  goto ret0;

 L27695: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27696;
  goto ret0;

 L27696: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27697;
    }
  goto ret0;

 L27697: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27698;
  goto ret0;

 L27698: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27699;
  goto ret0;

 L27699: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27700;
  goto ret0;

 L27700: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27701;
    }
  goto ret0;

 L27701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 6)
    goto L27702;
  goto ret0;

 L27702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27703;
  goto ret0;

 L27703: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27704;
  goto ret0;

 L27704: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27705;
  goto ret0;

 L27705: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27706;
  goto ret0;

 L27706: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27707;
  goto ret0;

 L27707: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2659;  /* avx512vl_ss_truncatev2div2hi2_mask */
    }
  goto ret0;

 L27713: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27714;
    }
  goto ret0;

 L27714: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27715;
  goto ret0;

 L27715: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27716;
    }
  goto ret0;

 L27716: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27717;
  goto ret0;

 L27717: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27718;
  goto ret0;

 L27718: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27719;
  goto ret0;

 L27719: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27720;
    }
  goto ret0;

 L27720: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 6)
    goto L27721;
  goto ret0;

 L27721: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27722;
  goto ret0;

 L27722: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27723;
  goto ret0;

 L27723: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27724;
  goto ret0;

 L27724: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27725;
  goto ret0;

 L27725: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27726;
  goto ret0;

 L27726: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2660;  /* avx512vl_truncatev2div2hi2_mask */
    }
  goto ret0;

 L27732: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27733;
    }
  goto ret0;

 L27733: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27734;
  goto ret0;

 L27734: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L27735;
    }
  goto ret0;

 L27735: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27736;
  goto ret0;

 L27736: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27737;
  goto ret0;

 L27737: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27738;
  goto ret0;

 L27738: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27739;
    }
  goto ret0;

 L27739: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 6)
    goto L27740;
  goto ret0;

 L27740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27741;
  goto ret0;

 L27741: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27742;
  goto ret0;

 L27742: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27743;
  goto ret0;

 L27743: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27744;
  goto ret0;

 L27744: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27745;
  goto ret0;

 L27745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8987 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2661;  /* avx512vl_us_truncatev2div2hi2_mask */
    }
  goto ret0;

 L28367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59255;
  goto ret0;

 L59255: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case MULT:
      goto L39789;
    case SIGN_EXTEND:
      goto L40129;
    case ZERO_EXTEND:
      goto L40156;
    case REG:
    case SUBREG:
    case MEM:
      goto L59254;
    default:
      goto ret0;
   }
 L59254: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L28368;
    }
  goto ret0;

 L39789: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L39790;
    }
  goto ret0;

 L39790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L39791;
    }
  goto ret0;

 L39791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L39792;
    }
  goto ret0;

 L39792: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15454 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3763;  /* xop_pmacsww */
    }
  goto ret0;

 L40129: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40130;
  goto ret0;

 L40130: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L40131;
    }
  goto ret0;

 L40131: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L40132;
  goto ret0;

 L40132: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40133;
  goto ret0;

 L40133: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40134;
  goto ret0;

 L40134: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40135;
  goto ret0;

 L40135: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40136;
  goto ret0;

 L40136: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40137;
  goto ret0;

 L40137: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40138;
  goto ret0;

 L40138: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40139;
  goto ret0;

 L40139: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40140;
  goto ret0;

 L40140: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L40141;
  goto ret0;

 L40141: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40142;
  goto ret0;

 L40142: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40143;
  goto ret0;

 L40143: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L40144;
  goto ret0;

 L40144: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40145;
  goto ret0;

 L40145: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40146;
  goto ret0;

 L40146: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40147;
  goto ret0;

 L40147: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40148;
  goto ret0;

 L40148: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40149;
  goto ret0;

 L40149: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40150;
  goto ret0;

 L40150: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40151;
  goto ret0;

 L40151: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15577 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3791;  /* xop_phaddbw */
    }
  goto ret0;

 L40156: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40157;
  goto ret0;

 L40157: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L40158;
    }
  goto ret0;

 L40158: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L40159;
  goto ret0;

 L40159: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40160;
  goto ret0;

 L40160: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40161;
  goto ret0;

 L40161: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40162;
  goto ret0;

 L40162: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40163;
  goto ret0;

 L40163: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40164;
  goto ret0;

 L40164: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40165;
  goto ret0;

 L40165: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40166;
  goto ret0;

 L40166: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40167;
  goto ret0;

 L40167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L40168;
  goto ret0;

 L40168: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40169;
  goto ret0;

 L40169: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40170;
  goto ret0;

 L40170: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L40171;
  goto ret0;

 L40171: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40172;
  goto ret0;

 L40172: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40173;
  goto ret0;

 L40173: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40174;
  goto ret0;

 L40174: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40175;
  goto ret0;

 L40175: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40176;
  goto ret0;

 L40176: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40177;
  goto ret0;

 L40177: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40178;
  goto ret0;

 L40178: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15577 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3792;  /* xop_phaddubw */
    }
  goto ret0;

 L28368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L28369;
    }
  goto ret0;

 L28369: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V8HImode, operands)))
    {
      return 2709;  /* *addv8hi3 */
    }
  goto ret0;

 L28382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59259;
  goto ret0;

 L59259: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == SIGN_EXTEND)
    goto L40497;
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L28383;
    }
  goto ret0;

 L40497: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40498;
  goto ret0;

 L40498: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L40499;
    }
  goto ret0;

 L40499: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L40500;
  goto ret0;

 L40500: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40501;
  goto ret0;

 L40501: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40502;
  goto ret0;

 L40502: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40503;
  goto ret0;

 L40503: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40504;
  goto ret0;

 L40504: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40505;
  goto ret0;

 L40505: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40506;
  goto ret0;

 L40506: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40507;
  goto ret0;

 L40507: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40508;
  goto ret0;

 L40508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L40509;
  goto ret0;

 L40509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40510;
  goto ret0;

 L40510: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40511;
  goto ret0;

 L40511: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L40512;
  goto ret0;

 L40512: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40513;
  goto ret0;

 L40513: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40514;
  goto ret0;

 L40514: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40515;
  goto ret0;

 L40515: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40516;
  goto ret0;

 L40516: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40517;
  goto ret0;

 L40517: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40518;
  goto ret0;

 L40518: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40519;
  goto ret0;

 L40519: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15729 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3803;  /* xop_phsubbw */
    }
  goto ret0;

 L28383: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L28384;
    }
  goto ret0;

 L28384: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V8HImode, operands)))
    {
      return 2711;  /* *subv8hi3 */
    }
  goto ret0;

 L29093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59261;
  goto ret0;

 L59261: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MULT)
    goto L37451;
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29094;
    }
  goto ret0;

 L37451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode)
    goto L59262;
  goto ret0;

 L59262: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ZERO_EXTEND)
    goto L37452;
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L39798;
    }
  goto ret0;

 L37452: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37453;
  goto ret0;

 L37453: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V16QImode))
    {
      operands[1] = x5;
      goto L37454;
    }
  goto ret0;

 L37454: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L37455;
  goto ret0;

 L37455: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37456;
  goto ret0;

 L37456: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37457;
  goto ret0;

 L37457: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37458;
  goto ret0;

 L37458: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37459;
  goto ret0;

 L37459: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L37460;
  goto ret0;

 L37460: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L37461;
  goto ret0;

 L37461: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L37462;
  goto ret0;

 L37462: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37463;
  goto ret0;

 L37463: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L37464;
  goto ret0;

 L37464: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37465;
  goto ret0;

 L37465: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16QImode))
    {
      operands[2] = x5;
      goto L37466;
    }
  goto ret0;

 L37466: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L37467;
  goto ret0;

 L37467: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37468;
  goto ret0;

 L37468: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37469;
  goto ret0;

 L37469: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37470;
  goto ret0;

 L37470: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37471;
  goto ret0;

 L37471: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L37472;
  goto ret0;

 L37472: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L37473;
  goto ret0;

 L37473: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L37474;
  goto ret0;

 L37474: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37475;
  goto ret0;

 L37475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == MULT)
    goto L37476;
  goto ret0;

 L37476: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L37477;
  goto ret0;

 L37477: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37478;
  goto ret0;

 L37478: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37479;
  goto ret0;

 L37479: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L37480;
  goto ret0;

 L37480: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37481;
  goto ret0;

 L37481: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37482;
  goto ret0;

 L37482: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37483;
  goto ret0;

 L37483: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L37484;
  goto ret0;

 L37484: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L37485;
  goto ret0;

 L37485: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L37486;
  goto ret0;

 L37486: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L37487;
  goto ret0;

 L37487: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L37488;
  goto ret0;

 L37488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L37489;
  goto ret0;

 L37489: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37490;
  goto ret0;

 L37490: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37491;
  goto ret0;

 L37491: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L37492;
  goto ret0;

 L37492: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37493;
  goto ret0;

 L37493: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37494;
  goto ret0;

 L37494: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37495;
  goto ret0;

 L37495: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L37496;
  goto ret0;

 L37496: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L37497;
  goto ret0;

 L37497: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L37498;
  goto ret0;

 L37498: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L37499;
  goto ret0;

 L37499: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 13583 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3508;  /* ssse3_pmaddubsw128 */
    }
  goto ret0;

 L39798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L39799;
    }
  goto ret0;

 L39799: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L39800;
    }
  goto ret0;

 L39800: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15454 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3764;  /* xop_pmacssww */
    }
  goto ret0;

 L29094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L29095;
    }
  goto ret0;

 L29095: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_PLUS, V8HImode, operands)))
    {
      return 2801;  /* *sse2_ssaddv8hi3 */
    }
  goto ret0;

 L29108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29109;
    }
  goto ret0;

 L29109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L29110;
    }
  goto ret0;

 L29110: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_PLUS, V8HImode, operands)))
    {
      return 2803;  /* *sse2_usaddv8hi3 */
    }
  goto ret0;

 L29123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29124;
    }
  goto ret0;

 L29124: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L29125;
    }
  goto ret0;

 L29125: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (SS_MINUS, V8HImode, operands)))
    {
      return 2805;  /* *sse2_sssubv8hi3 */
    }
  goto ret0;

 L29138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29139;
    }
  goto ret0;

 L29139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L29140;
    }
  goto ret0;

 L29140: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (US_MINUS, V8HImode, operands)))
    {
      return 2807;  /* *sse2_ussubv8hi3 */
    }
  goto ret0;

 L29183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29184;
    }
  goto ret0;

 L29184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L29185;
    }
  goto ret0;

 L29185: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V8HImode, operands)
   && 1 && 1))
    {
      return 2813;  /* *mulv8hi3 */
    }
  goto ret0;

 L29294: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L29295;
  goto ret0;

 L29295: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode)
    goto L59264;
  goto ret0;

 L59264: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case MULT:
      goto L29296;
    case PLUS:
      goto L35692;
    default:
     break;
   }
  goto ret0;

 L29296: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode)
    goto L59266;
  goto ret0;

 L59266: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L29297;
    case ZERO_EXTEND:
      goto L29321;
    default:
     break;
   }
  goto ret0;

 L29297: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[1] = x5;
      goto L29298;
    }
  goto ret0;

 L29298: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V8SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L29299;
  goto ret0;

 L29299: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[2] = x5;
      goto L29300;
    }
  goto ret0;

 L29300: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && 
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V8HImode, operands)
   && 1 && 1))
    {
      return 2823;  /* *smulv8hi3_highpart */
    }
  goto ret0;

 L29321: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[1] = x5;
      goto L29322;
    }
  goto ret0;

 L29322: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V8SImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L29323;
  goto ret0;

 L29323: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[2] = x5;
      goto L29324;
    }
  goto ret0;

 L29324: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)]
      && 
#line 9331 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MULT, V8HImode, operands)
   && 1 && 1))
    {
      return 2825;  /* *umulv8hi3_highpart */
    }
  goto ret0;

 L35692: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode)
    goto L59268;
  goto ret0;

 L59268: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case PLUS:
      goto L35693;
    case LSHIFTRT:
      goto L37607;
    default:
     break;
   }
  goto ret0;

 L35693: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35694;
  goto ret0;

 L35694: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L35695;
    }
  goto ret0;

 L35695: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == V8SImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L35696;
  goto ret0;

 L35696: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L35697;
    }
  goto ret0;

 L35697: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V8HImode))
    {
      operands[3] = x4;
      goto L35698;
    }
  goto ret0;

 L35698: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1
   && ix86_binary_operator_ok (PLUS, V8HImode, operands)))
    {
      return 3462;  /* *sse2_uavgv8hi3 */
    }
  goto ret0;

 L37607: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8SImode
      && GET_CODE (x5) == MULT)
    goto L37608;
  goto ret0;

 L37608: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == V8SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37609;
  goto ret0;

 L37609: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V8HImode))
    {
      operands[1] = x7;
      goto L37610;
    }
  goto ret0;

 L37610: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == V8SImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L37611;
  goto ret0;

 L37611: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (nonimmediate_operand (x7, V8HImode))
    {
      operands[2] = x7;
      goto L37612;
    }
  goto ret0;

 L37612: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L37613;
  goto ret0;

 L37613: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const1_operand (x4, V8HImode))
    {
      operands[3] = x4;
      goto L37614;
    }
  goto ret0;

 L37614: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 13686 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3 && 1 && 1
   && ix86_binary_operator_ok (MULT, V8HImode, operands)))
    {
      return 3514;  /* *ssse3_pmulhrswv8hi3 */
    }
  goto ret0;

 L29841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59270;
  goto ret0;

 L59270: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L44200;
    }
 L59271: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29875;
    }
  goto ret0;

 L44200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L44201;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29843;
    }
  x2 = XEXP (x1, 0);
  goto L59271;

 L44201: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4258;  /* avx512vl_ashrvv8hi */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59271;

 L29843: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9901 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2860;  /* ashrv8hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59271;

 L29875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29876;
    }
  goto ret0;

 L29876: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 406 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2865;  /* *ashrv8hi3 */
    }
  goto ret0;

 L30054: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L44425;
    }
  goto ret0;

 L44425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L44426;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30056;
    }
  goto ret0;

 L44426: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4288;  /* avx512vl_ashlvv8hi */
    }
  goto ret0;

 L30056: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 2889;  /* ashlv8hi3 */
    }
  goto ret0;

 L30069: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L44440;
    }
  goto ret0;

 L44440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L44441;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30071;
    }
  goto ret0;

 L44441: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17804 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 340 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4290;  /* avx512vl_lshrvv8hi */
    }
  goto ret0;

 L30071: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9962 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 2891;  /* lshrv8hi3 */
    }
  goto ret0;

 L31392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59272;
  goto ret0;

 L59272: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31393;
    }
 L59273: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31513;
    }
  goto ret0;

 L31393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31394;
    }
  x2 = XEXP (x1, 0);
  goto L59273;

 L31394: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3071;  /* *smaxv8hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59273;

 L31513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31514;
    }
  goto ret0;

 L31514: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10269 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_binary_operator_ok (SMAX, V8HImode, operands)))
    {
      return 3087;  /* *smaxv8hi3 */
    }
  goto ret0;

 L31407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59274;
  goto ret0;

 L59274: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31408;
    }
 L59275: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31519;
    }
  goto ret0;

 L31408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31409;
    }
  x2 = XEXP (x1, 0);
  goto L59275;

 L31409: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3073;  /* *sminv8hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59275;

 L31519: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31520;
    }
  goto ret0;

 L31520: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10269 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_binary_operator_ok (SMIN, V8HImode, operands)))
    {
      return 3088;  /* *sminv8hi3 */
    }
  goto ret0;

 L31422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59276;
  goto ret0;

 L59276: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31423;
    }
 L59277: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31525;
    }
  goto ret0;

 L31423: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31424;
    }
  x2 = XEXP (x1, 0);
  goto L59277;

 L31424: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3075;  /* *umaxv8hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59277;

 L31525: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31526;
    }
  goto ret0;

 L31526: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (UMAX, V8HImode, operands)))
    {
      return 3089;  /* *sse4_1_umaxv8hi3 */
    }
  goto ret0;

 L31437: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59278;
  goto ret0;

 L59278: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31438;
    }
 L59279: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31540;
    }
  goto ret0;

 L31438: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31439;
    }
  x2 = XEXP (x1, 0);
  goto L59279;

 L31439: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3077;  /* *uminv8hi3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59279;

 L31540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31541;
    }
  goto ret0;

 L31541: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (UMIN, V8HImode, operands)))
    {
      return 3091;  /* *sse4_1_uminv8hi3 */
    }
  goto ret0;

 L31800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31801;
    }
  goto L59118;

 L31801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31802;
    }
  goto L59118;

 L31802: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_XOP
   && ix86_binary_operator_ok (EQ, V8HImode, operands)))
    {
      return 3129;  /* *sse2_eqv8hi3 */
    }
  x1 = XEXP (x0, 1);
  goto L59118;

 L32016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L32017;
    }
  goto L59118;

 L32017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L32018;
    }
  goto L59118;

 L32018: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_XOP))
    {
      return 3161;  /* sse2_gtv8hi3 */
    }
  x1 = XEXP (x0, 1);
  goto L59118;

 L32147: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59280;
  goto ret0;

 L59280: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32148;
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L32668;
    }
  goto ret0;

 L32148: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L32149;
    }
  goto ret0;

 L32149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L32150;
    }
  goto ret0;

 L32150: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3177;  /* *andnotv8hi3 */
    }
  goto ret0;

 L32668: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L32669;
    }
  goto ret0;

 L32669: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V8HImode, operands)))
    {
      return 3241;  /* *andv8hi3 */
    }
  goto ret0;

 L32682: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L32683;
    }
  goto ret0;

 L32683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L32684;
    }
  goto ret0;

 L32684: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V8HImode, operands)))
    {
      return 3243;  /* *iorv8hi3 */
    }
  goto ret0;

 L32697: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L32698;
    }
  goto ret0;

 L32698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L32699;
    }
  goto ret0;

 L32699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V8HImode, operands)))
    {
      return 3245;  /* *xorv8hi3 */
    }
  goto ret0;

 L34087: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16HImode:
      goto L59282;
    case V8HImode:
      goto L59283;
    default:
      break;
    }
  goto ret0;

 L59282: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L34088;
  goto ret0;

 L34088: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L34089;
    }
  goto ret0;

 L34089: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L34090;
    }
  goto ret0;

 L34090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L34091;
  goto ret0;

 L34091: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L59285;
  goto ret0;

 L59285: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 4LL:
        goto L34092;
      case 0LL:
        goto L34258;
      default:
        break;
      }
  goto ret0;

 L34092: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34093;
  goto ret0;

 L34093: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34094;
  goto ret0;

 L34094: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34095;
  goto ret0;

 L34095: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34096;
  goto ret0;

 L34096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34097;
  goto ret0;

 L34097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34098;
  goto ret0;

 L34098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 11374 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3353;  /* vec_interleave_highv8hi */
    }
  goto ret0;

 L34258: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34259;
  goto ret0;

 L34259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34260;
  goto ret0;

 L34260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34261;
  goto ret0;

 L34261: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34262;
  goto ret0;

 L34262: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34263;
  goto ret0;

 L34263: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34264;
  goto ret0;

 L34264: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)]
      && 
#line 11442 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3359;  /* vec_interleave_lowv8hi */
    }
  goto ret0;

 L59283: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L35314;
    }
 L59284: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L43690;
    }
  goto ret0;

 L35314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L35315;
  x2 = XEXP (x1, 0);
  goto L59284;

 L35315: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L59287;
  x2 = XEXP (x1, 0);
  goto L59284;

 L59287: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35316;
    }
 L59288: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x3, 0) == 0LL)
    goto L35408;
  x2 = XEXP (x1, 0);
  goto L59284;

 L35316: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35317;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35317: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35318;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35318: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35319;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35319: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L35320;
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35320: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L35321;
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35321: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L35322;
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35322: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 12392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3427;  /* sse2_pshuflw_1 */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59288;

 L35408: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L35409;
  x2 = XEXP (x1, 0);
  goto L59284;

 L35409: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L35410;
  x2 = XEXP (x1, 0);
  goto L59284;

 L35410: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L35411;
  x2 = XEXP (x1, 0);
  goto L59284;

 L35411: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35412;
    }
  x2 = XEXP (x1, 0);
  goto L59284;

 L35412: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35413;
    }
  x2 = XEXP (x1, 0);
  goto L59284;

 L35413: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35414;
    }
  x2 = XEXP (x1, 0);
  goto L59284;

 L35414: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35415;
    }
  x2 = XEXP (x1, 0);
  goto L59284;

 L35415: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12549 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 3433;  /* sse2_pshufhw_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59284;

 L43690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && palignr_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L43691;
    }
  goto ret0;

 L43691: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L43692;
    }
  goto ret0;

 L43692: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17444 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 4202;  /* *ssse3_palignrv8hi_perm */
    }
  goto ret0;

 L37838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L37839;
    }
  goto ret0;

 L37839: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3545;  /* *absv8hi2 */
    }
  goto ret0;

 L38304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L38305;
  goto ret0;

 L38305: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38306;
    }
  goto ret0;

 L38306: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L38307;
  goto ret0;

 L38307: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38308;
  goto ret0;

 L38308: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38309;
  goto ret0;

 L38309: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38310;
  goto ret0;

 L38310: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38311;
  goto ret0;

 L38311: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38312;
  goto ret0;

 L38312: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38313;
  goto ret0;

 L38313: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38314;
  goto ret0;

 L38314: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 14247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1 && 1))
    {
      return 3613;  /* sse4_1_sign_extendv8qiv8hi2 */
    }
  goto ret0;

 L38336: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L38337;
  goto ret0;

 L38337: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38338;
    }
  goto ret0;

 L38338: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L38339;
  goto ret0;

 L38339: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38340;
  goto ret0;

 L38340: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38341;
  goto ret0;

 L38341: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38342;
  goto ret0;

 L38342: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38343;
  goto ret0;

 L38343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38344;
  goto ret0;

 L38344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38345;
  goto ret0;

 L38345: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38346;
  goto ret0;

 L38346: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 14247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1 && 1))
    {
      return 3615;  /* sse4_1_zero_extendv8qiv8hi2 */
    }
  goto ret0;

 L40037: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59290;
  goto ret0;

 L59290: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == GE)
    goto L40659;
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L40038;
    }
  goto ret0;

 L40659: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L40660;
    }
  goto ret0;

 L40660: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40661;
  goto ret0;

 L40661: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode)
    goto L59291;
  goto ret0;

 L59291: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ROTATE:
      goto L40662;
    case ASHIFT:
      goto L40714;
    default:
     break;
   }
  goto ret0;

 L40662: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L40663;
    }
  goto ret0;

 L40663: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40664;
  goto ret0;

 L40664: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == ROTATERT)
    goto L40665;
  goto ret0;

 L40665: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40666;
  goto ret0;

 L40666: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == NEG)
    goto L40667;
  goto ret0;

 L40667: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 15943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3819;  /* xop_vrotlv8hi3 */
    }
  goto ret0;

 L40714: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L40715;
    }
  goto ret0;

 L40715: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40716;
  goto ret0;

 L40716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V8HImode)
    goto L59293;
  goto ret0;

 L59293: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFTRT:
      goto L40717;
    case LSHIFTRT:
      goto L40769;
    default:
     break;
   }
  goto ret0;

 L40717: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40718;
  goto ret0;

 L40718: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == NEG)
    goto L40719;
  goto ret0;

 L40719: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16118 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3823;  /* xop_shav8hi3 */
    }
  goto ret0;

 L40769: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40770;
  goto ret0;

 L40770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8HImode
      && GET_CODE (x3) == NEG)
    goto L40771;
  goto ret0;

 L40771: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16137 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3827;  /* xop_shlv8hi3 */
    }
  goto ret0;

 L40038: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L40039;
    }
  goto ret0;

 L40039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L40040;
    }
  goto ret0;

 L40040: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3778;  /* xop_pcmov_v8hi */
    }
  goto ret0;

 L40603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L40604;
    }
  goto ret0;

 L40604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40605;
    }
  goto ret0;

 L40605: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15888 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3811;  /* xop_rotlv8hi3 */
    }
  goto ret0;

 L40627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L40628;
    }
  goto ret0;

 L40628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40629;
    }
  goto ret0;

 L40629: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15899 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3815;  /* xop_rotrv8hi3 */
    }
  goto ret0;

 L41077: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode)
    goto L59295;
  goto ret0;

 L59295: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41078;
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L41926;
    }
  goto ret0;

 L41078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L41079;
    }
  goto ret0;

 L41079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41080;
  goto ret0;

 L41080: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59297;
  goto ret0;

 L59297: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L59299;
  goto ret0;

 L59299: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3874;  /* avx2_pbroadcastv8hi */
    }
 L59300: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3959;  /* avx512vl_vec_dupv8hi */
    }
  goto ret0;

 L41926: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3979;  /* *avx512vl_vec_dup_gprv8hi */
    }
 L42145: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16786 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4015;  /* *vec_dupv8hi */
    }
  goto ret0;

 L40851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L40852;
    }
  goto L59119;

 L40852: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L40853;
    }
  goto L59119;

 L40853: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16256 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3839;  /* xop_maskcmpv8hi3 */
    }
  x1 = XEXP (x0, 1);
  goto L59119;

 L40875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L40876;
    }
  goto ret0;

 L40876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L40877;
    }
  goto ret0;

 L40877: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3843;  /* xop_maskcmp_unsv8hi3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_48 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27526;
    case TRUNCATE:
      goto L27547;
    case US_TRUNCATE:
      goto L27568;
    default:
     break;
   }
  goto ret0;

 L27526: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L59324;
    case V4DImode:
      goto L59325;
    default:
      break;
    }
  goto ret0;

 L59324: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L27527;
    }
  goto ret0;

 L27527: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27528;
  goto ret0;

 L27528: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27529;
  goto ret0;

 L27529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27530;
  goto ret0;

 L27530: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27531;
  goto ret0;

 L27531: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27532;
  goto ret0;

 L27532: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27533;
  goto ret0;

 L27533: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27534;
  goto ret0;

 L27534: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27535;
    }
  goto ret0;

 L27535: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27536;
  goto ret0;

 L27536: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27537;
  goto ret0;

 L27537: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27538;
  goto ret0;

 L27538: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27539;
  goto ret0;

 L27539: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27540;
  goto ret0;

 L27540: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27541;
  goto ret0;

 L27541: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8950 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2650;  /* avx512vl_ss_truncatev4siv4hi2_mask_store */
    }
  goto ret0;

 L59325: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L27590;
    }
  goto ret0;

 L27590: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27591;
  goto ret0;

 L27591: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27592;
  goto ret0;

 L27592: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27593;
  goto ret0;

 L27593: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27594;
  goto ret0;

 L27594: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27595;
  goto ret0;

 L27595: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27596;
  goto ret0;

 L27596: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27597;
  goto ret0;

 L27597: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27598;
    }
  goto ret0;

 L27598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27599;
  goto ret0;

 L27599: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27600;
  goto ret0;

 L27600: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27601;
  goto ret0;

 L27601: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27602;
  goto ret0;

 L27602: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27603;
  goto ret0;

 L27603: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27604;
  goto ret0;

 L27604: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8950 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2653;  /* avx512vl_ss_truncatev4div4hi2_mask_store */
    }
  goto ret0;

 L27547: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L59326;
    case V4DImode:
      goto L59327;
    default:
      break;
    }
  goto ret0;

 L59326: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L27548;
    }
  goto ret0;

 L27548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27549;
  goto ret0;

 L27549: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27550;
  goto ret0;

 L27550: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27551;
  goto ret0;

 L27551: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27552;
  goto ret0;

 L27552: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27553;
  goto ret0;

 L27553: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27554;
  goto ret0;

 L27554: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27555;
  goto ret0;

 L27555: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27556;
    }
  goto ret0;

 L27556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27557;
  goto ret0;

 L27557: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27558;
  goto ret0;

 L27558: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27559;
  goto ret0;

 L27559: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27560;
  goto ret0;

 L27560: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27561;
  goto ret0;

 L27561: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27562;
  goto ret0;

 L27562: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8950 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2651;  /* avx512vl_truncatev4siv4hi2_mask_store */
    }
  goto ret0;

 L59327: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L27611;
    }
  goto ret0;

 L27611: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27612;
  goto ret0;

 L27612: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27613;
  goto ret0;

 L27613: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27614;
  goto ret0;

 L27614: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27615;
  goto ret0;

 L27615: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27616;
  goto ret0;

 L27616: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27617;
  goto ret0;

 L27617: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27618;
  goto ret0;

 L27618: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27619;
    }
  goto ret0;

 L27619: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27620;
  goto ret0;

 L27620: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27621;
  goto ret0;

 L27621: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27622;
  goto ret0;

 L27622: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27623;
  goto ret0;

 L27623: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27624;
  goto ret0;

 L27624: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27625;
  goto ret0;

 L27625: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8950 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2654;  /* avx512vl_truncatev4div4hi2_mask_store */
    }
  goto ret0;

 L27568: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L59328;
    case V4DImode:
      goto L59329;
    default:
      break;
    }
  goto ret0;

 L59328: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L27569;
    }
  goto ret0;

 L27569: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27570;
  goto ret0;

 L27570: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27571;
  goto ret0;

 L27571: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27572;
  goto ret0;

 L27572: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27573;
  goto ret0;

 L27573: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27574;
  goto ret0;

 L27574: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27575;
  goto ret0;

 L27575: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27576;
  goto ret0;

 L27576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27577;
    }
  goto ret0;

 L27577: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27578;
  goto ret0;

 L27578: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27579;
  goto ret0;

 L27579: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27580;
  goto ret0;

 L27580: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27581;
  goto ret0;

 L27581: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27582;
  goto ret0;

 L27582: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27583;
  goto ret0;

 L27583: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8950 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2652;  /* avx512vl_us_truncatev4siv4hi2_mask_store */
    }
  goto ret0;

 L59329: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L27632;
    }
  goto ret0;

 L27632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27633;
  goto ret0;

 L27633: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27634;
  goto ret0;

 L27634: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L27635;
  goto ret0;

 L27635: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27636;
  goto ret0;

 L27636: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27637;
  goto ret0;

 L27637: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27638;
  goto ret0;

 L27638: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27639;
  goto ret0;

 L27639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27640;
    }
  goto ret0;

 L27640: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27641;
  goto ret0;

 L27641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27642;
  goto ret0;

 L27642: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27643;
  goto ret0;

 L27643: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27644;
  goto ret0;

 L27644: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27645;
  goto ret0;

 L27645: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27646;
  goto ret0;

 L27646: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8950 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2655;  /* avx512vl_us_truncatev4div4hi2_mask_store */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_49 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4HImode:
      goto L59307;
    case V2HImode:
      goto L59311;
    default:
      break;
    }
  goto ret0;

 L59307: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L27339;
    case TRUNCATE:
      goto L27351;
    case US_TRUNCATE:
      goto L27363;
    case VEC_MERGE:
      goto L27525;
    default:
     break;
   }
  goto ret0;

 L27339: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L59315;
    case V4DImode:
      goto L59316;
    default:
      break;
    }
  goto ret0;

 L59315: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L27340;
    }
  goto ret0;

 L27340: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27341;
  goto ret0;

 L27341: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27342;
  goto ret0;

 L27342: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27343;
  goto ret0;

 L27343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27344;
  goto ret0;

 L27344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27345;
  goto ret0;

 L27345: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27346;
  goto ret0;

 L27346: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8909 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2638;  /* *avx512vl_ss_truncatev4siv4hi2_store */
    }
  goto ret0;

 L59316: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L27376;
    }
  goto ret0;

 L27376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27377;
  goto ret0;

 L27377: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27378;
  goto ret0;

 L27378: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27379;
  goto ret0;

 L27379: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27380;
  goto ret0;

 L27380: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27381;
  goto ret0;

 L27381: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27382;
  goto ret0;

 L27382: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8909 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2641;  /* *avx512vl_ss_truncatev4div4hi2_store */
    }
  goto ret0;

 L27351: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L59317;
    case V4DImode:
      goto L59318;
    default:
      break;
    }
  goto ret0;

 L59317: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L27352;
    }
  goto ret0;

 L27352: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27353;
  goto ret0;

 L27353: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27354;
  goto ret0;

 L27354: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27355;
  goto ret0;

 L27355: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27356;
  goto ret0;

 L27356: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27357;
  goto ret0;

 L27357: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27358;
  goto ret0;

 L27358: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8909 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2639;  /* *avx512vl_truncatev4siv4hi2_store */
    }
  goto ret0;

 L59318: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L27388;
    }
  goto ret0;

 L27388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27389;
  goto ret0;

 L27389: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27390;
  goto ret0;

 L27390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27391;
  goto ret0;

 L27391: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27392;
  goto ret0;

 L27392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27393;
  goto ret0;

 L27393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27394;
  goto ret0;

 L27394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8909 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2642;  /* *avx512vl_truncatev4div4hi2_store */
    }
  goto ret0;

 L27363: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L59319;
    case V4DImode:
      goto L59320;
    default:
      break;
    }
  goto ret0;

 L59319: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L27364;
    }
  goto ret0;

 L27364: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27365;
  goto ret0;

 L27365: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27366;
  goto ret0;

 L27366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27367;
  goto ret0;

 L27367: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27368;
  goto ret0;

 L27368: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27369;
  goto ret0;

 L27369: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27370;
  goto ret0;

 L27370: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8909 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2640;  /* *avx512vl_us_truncatev4siv4hi2_store */
    }
  goto ret0;

 L59320: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L27400;
    }
  goto ret0;

 L27400: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27401;
  goto ret0;

 L27401: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27402;
  goto ret0;

 L27402: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L27403;
  goto ret0;

 L27403: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27404;
  goto ret0;

 L27404: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27405;
  goto ret0;

 L27405: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27406;
  goto ret0;

 L27406: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8909 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2643;  /* *avx512vl_us_truncatev4div4hi2_store */
    }
  goto ret0;

 L27525: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode)
    goto L59321;
  goto ret0;

 L59321: ATTRIBUTE_UNUSED_LABEL
  return recog_48 (x0, insn, pnum_clobbers);

 L59311: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L27651;
    case TRUNCATE:
      goto L27665;
    case US_TRUNCATE:
      goto L27679;
    case VEC_MERGE:
      goto L27750;
    default:
     break;
   }
  goto ret0;

 L27651: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27652;
    }
  goto ret0;

 L27652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27653;
  goto ret0;

 L27653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27654;
  goto ret0;

 L27654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 6)
    goto L27655;
  goto ret0;

 L27655: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27656;
  goto ret0;

 L27656: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27657;
  goto ret0;

 L27657: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27658;
  goto ret0;

 L27658: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27659;
  goto ret0;

 L27659: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27660;
  goto ret0;

 L27660: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8967 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2656;  /* *avx512vl_ss_truncatev2div2hi2_store */
    }
  goto ret0;

 L27665: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27666;
    }
  goto ret0;

 L27666: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27667;
  goto ret0;

 L27667: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27668;
  goto ret0;

 L27668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 6)
    goto L27669;
  goto ret0;

 L27669: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27670;
  goto ret0;

 L27670: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27671;
  goto ret0;

 L27671: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27672;
  goto ret0;

 L27672: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27673;
  goto ret0;

 L27673: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27674;
  goto ret0;

 L27674: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8967 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2657;  /* *avx512vl_truncatev2div2hi2_store */
    }
  goto ret0;

 L27679: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27680;
    }
  goto ret0;

 L27680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27681;
  goto ret0;

 L27681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27682;
  goto ret0;

 L27682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 6)
    goto L27683;
  goto ret0;

 L27683: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27684;
  goto ret0;

 L27684: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27685;
  goto ret0;

 L27685: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27686;
  goto ret0;

 L27686: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27687;
  goto ret0;

 L27687: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27688;
  goto ret0;

 L27688: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8967 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2658;  /* *avx512vl_us_truncatev2div2hi2_store */
    }
  goto ret0;

 L27750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2HImode)
    goto L59330;
  goto ret0;

 L59330: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27751;
    case TRUNCATE:
      goto L27772;
    case US_TRUNCATE:
      goto L27793;
    default:
     break;
   }
  goto ret0;

 L27751: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27752;
    }
  goto ret0;

 L27752: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27753;
  goto ret0;

 L27753: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27754;
  goto ret0;

 L27754: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27755;
  goto ret0;

 L27755: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27756;
  goto ret0;

 L27756: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27757;
  goto ret0;

 L27757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27758;
    }
  goto ret0;

 L27758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27759;
  goto ret0;

 L27759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27760;
  goto ret0;

 L27760: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 6)
    goto L27761;
  goto ret0;

 L27761: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27762;
  goto ret0;

 L27762: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27763;
  goto ret0;

 L27763: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27764;
  goto ret0;

 L27764: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27765;
  goto ret0;

 L27765: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27766;
  goto ret0;

 L27766: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 9008 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2662;  /* avx512vl_ss_truncatev2div2hi2_mask_store */
    }
  goto ret0;

 L27772: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27773;
    }
  goto ret0;

 L27773: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27774;
  goto ret0;

 L27774: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27775;
  goto ret0;

 L27775: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27776;
  goto ret0;

 L27776: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27777;
  goto ret0;

 L27777: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27778;
  goto ret0;

 L27778: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27779;
    }
  goto ret0;

 L27779: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27780;
  goto ret0;

 L27780: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27781;
  goto ret0;

 L27781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 6)
    goto L27782;
  goto ret0;

 L27782: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27783;
  goto ret0;

 L27783: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27784;
  goto ret0;

 L27784: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27785;
  goto ret0;

 L27785: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27786;
  goto ret0;

 L27786: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27787;
  goto ret0;

 L27787: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 9008 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2663;  /* avx512vl_truncatev2div2hi2_mask_store */
    }
  goto ret0;

 L27793: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27794;
    }
  goto ret0;

 L27794: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27795;
  goto ret0;

 L27795: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27796;
  goto ret0;

 L27796: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27797;
  goto ret0;

 L27797: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27798;
  goto ret0;

 L27798: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27799;
  goto ret0;

 L27799: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27800;
    }
  goto ret0;

 L27800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V6HImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27801;
  goto ret0;

 L27801: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27802;
  goto ret0;

 L27802: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 6)
    goto L27803;
  goto ret0;

 L27803: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27804;
  goto ret0;

 L27804: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L27805;
  goto ret0;

 L27805: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L27806;
  goto ret0;

 L27806: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L27807;
  goto ret0;

 L27807: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L27808;
  goto ret0;

 L27808: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 9008 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2664;  /* avx512vl_us_truncatev2div2hi2_mask_store */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_50 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (nonimmediate_operand (x1, V8HImode))
    {
      operands[0] = x1;
      goto L23437;
    }
 L57088: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8HImode))
    {
      operands[0] = x1;
      goto L11675;
    }
 L57106: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V8HImode))
    {
      operands[0] = x1;
      goto L11927;
    }
  goto ret0;

 L23437: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8HImode)
    goto L59059;
 L11492: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V8HImode))
    {
      operands[1] = x1;
      goto L11493;
    }
  x1 = XEXP (x0, 0);
  goto L57088;

 L59059: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L23438;
    case SS_TRUNCATE:
      goto L25781;
    case TRUNCATE:
      goto L25786;
    case US_TRUNCATE:
      goto L25791;
    case VEC_MERGE:
      goto L25868;
    case UNSPEC:
      goto L59065;
    default:
     break;
   }
  goto L11492;

 L23438: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59066;
  goto L11492;

 L59066: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L23439;
    }
 L59067: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L23452;
    }
  goto L11492;

 L23439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23440;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23440: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23441;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23442;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23443;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23444;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23445;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23446;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23446: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23447;
  x2 = XEXP (x1, 0);
  goto L59067;

 L23447: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 7186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2310;  /* vec_extract_lo_v16hi */
    }
  x2 = XEXP (x1, 0);
  goto L59067;

 L23452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23453;
  goto L11492;

 L23453: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23454;
  goto L11492;

 L23454: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23455;
  goto L11492;

 L23455: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23456;
  goto L11492;

 L23456: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23457;
  goto L11492;

 L23457: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23458;
  goto L11492;

 L23458: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23459;
  goto L11492;

 L23459: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23460;
  goto L11492;

 L23460: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 7205 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 2311;  /* vec_extract_hi_v16hi */
    }
  goto L11492;

 L25781: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DImode:
      goto L59068;
    case V8SImode:
      goto L59069;
    default:
      break;
    }
  goto L11492;

 L59068: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L25782;
    }
  goto L11492;

 L25782: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2530;  /* *avx512f_ss_truncatev8div8hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59069: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L25947;
    }
  goto L11492;

 L25947: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2554;  /* *avx512vl_ss_truncatev8siv8hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L25786: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DImode:
      goto L59070;
    case V8SImode:
      goto L59071;
    default:
      break;
    }
  goto L11492;

 L59070: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L25787;
    }
  goto L11492;

 L25787: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2531;  /* *avx512f_truncatev8div8hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59071: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L25952;
    }
  goto L11492;

 L25952: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2555;  /* *avx512vl_truncatev8siv8hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L25791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DImode:
      goto L59072;
    case V8SImode:
      goto L59073;
    default:
      break;
    }
  goto L11492;

 L59072: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L25792;
    }
  goto L11492;

 L25792: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2532;  /* *avx512f_us_truncatev8div8hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59073: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L25957;
    }
  goto L11492;

 L25957: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2556;  /* *avx512vl_us_truncatev8siv8hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L25868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59074;
  goto L11492;

 L59074: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L25869;
    case TRUNCATE:
      goto L25877;
    case US_TRUNCATE:
      goto L25885;
    case UNSPEC:
      goto L59078;
    default:
     break;
   }
  goto L11492;

 L25869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L59079;
    case V8SImode:
      goto L59080;
    default:
      break;
    }
  goto L11492;

 L59079: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25870;
    }
  goto L11492;

 L25870: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L25871;
    }
  goto L11492;

 L25871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25872;
    }
  goto L11492;

 L25872: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2542;  /* avx512f_ss_truncatev8div8hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59080: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26002;
    }
  goto L11492;

 L26002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L26003;
    }
  goto L11492;

 L26003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L26004;
    }
  goto L11492;

 L26004: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2563;  /* avx512vl_ss_truncatev8siv8hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L25877: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L59081;
    case V8SImode:
      goto L59082;
    default:
      break;
    }
  goto L11492;

 L59081: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25878;
    }
  goto L11492;

 L25878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L25879;
    }
  goto L11492;

 L25879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25880;
    }
  goto L11492;

 L25880: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2543;  /* avx512f_truncatev8div8hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59082: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26010;
    }
  goto L11492;

 L26010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L26011;
    }
  goto L11492;

 L26011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L26012;
    }
  goto L11492;

 L26012: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2564;  /* avx512vl_truncatev8siv8hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L25885: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L59083;
    case V8SImode:
      goto L59084;
    default:
      break;
    }
  goto L11492;

 L59083: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25886;
    }
  goto L11492;

 L25886: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L25887;
    }
  goto L11492;

 L25887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25888;
    }
  goto L11492;

 L25888: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2544;  /* avx512f_us_truncatev8div8hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59084: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L26018;
    }
  goto L11492;

 L26018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L26019;
    }
  goto L11492;

 L26019: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L26020;
    }
  goto L11492;

 L26020: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2565;  /* avx512vl_us_truncatev8siv8hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59078: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 142)
    goto L44700;
  goto L11492;

 L44700: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L44701;
    }
  goto L11492;

 L44701: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L44702;
    }
  goto L11492;

 L44702: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8HImode))
    {
      operands[3] = x2;
      goto L44703;
    }
  goto L11492;

 L44703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44704;
    }
  goto L11492;

 L44704: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL)))
    {
      return 4326;  /* vcvtps2ph256_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L59065: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 142)
    goto L44693;
  goto L11492;

 L44693: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L44694;
    }
  goto L11492;

 L44694: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L44695;
    }
  goto L11492;

 L44695: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL))
    {
      return 4325;  /* vcvtps2ph256 */
    }
  x1 = XEXP (x0, 1);
  goto L11492;

 L11493: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V8HImode)
       || register_operand (operands[1], V8HImode))))
    {
      return 1002;  /* *movv8hi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57088;

 L11675: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8HImode)
    goto L59085;
  x1 = XEXP (x0, 0);
  goto L57106;

 L59085: ATTRIBUTE_UNUSED_LABEL
  tem = recog_47 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57106;

 L11927: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8HImode)
    goto L59301;
  goto ret0;

 L59301: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11928;
    case UNSPEC:
      goto L59304;
    case VEC_CONCAT:
      goto L27338;
    default:
     break;
   }
  goto ret0;

 L11928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L59306;
  goto ret0;

 L59306: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12417;
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L11929;
    }
  goto ret0;

 L12417: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L12418;
    }
  goto ret0;

 L12418: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12419;
  goto ret0;

 L12419: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12420;
    }
  goto ret0;

 L12420: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1465 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1145;  /* avx512vl_storedquv8hi_mask */
    }
  goto ret0;

 L11929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11930;
  goto ret0;

 L11930: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11931;
    }
  goto ret0;

 L11931: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1037 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1071;  /* avx512vl_storev8hi_mask */
    }
  goto ret0;

 L59304: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12288;
  goto ret0;

 L12288: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L12289;
    }
  goto ret0;

 L12289: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1422 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1126;  /* avx512vl_storedquv8hi */
    }
  goto ret0;

 L27338: ATTRIBUTE_UNUSED_LABEL
  return recog_49 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_51 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59432;
    case FIX:
      goto L20410;
    case UNSIGNED_FIX:
      goto L20442;
    case PLUS:
      goto L28404;
    case MINUS:
      goto L28419;
    case MULT:
      goto L29797;
    case ASHIFTRT:
      goto L29971;
    case ASHIFT:
      goto L30211;
    case LSHIFTRT:
      goto L30226;
    case ROTATE:
      goto L30307;
    case ROTATERT:
      goto L30322;
    case SMAX:
      goto L30739;
    case SMIN:
      goto L30754;
    case UMAX:
      goto L30769;
    case UMIN:
      goto L30784;
    case AND:
      goto L32036;
    case IOR:
      goto L32374;
    case XOR:
      goto L32389;
    case VEC_SELECT:
      goto L34345;
    case VEC_MERGE:
      goto L34605;
    case VEC_CONCAT:
      goto L34665;
    case ABS:
      goto L37874;
    case SIGN_EXTEND:
      goto L38374;
    case ZERO_EXTEND:
      goto L38387;
    case VEC_DUPLICATE:
      goto L41492;
    case CLZ:
      goto L51262;
    case REG:
    case SUBREG:
    case MEM:
      goto L59393;
    default:
      goto L59394;
   }
 L59393: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L11558;
    }
 L59394: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L11684;
    }
 L59419: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L34597;
    }
  goto ret0;

 L59432: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L59443;
    case 4:
      goto L59446;
    case 3:
      goto L59447;
    case 2:
      goto L59448;
    default:
      break;
    }
  goto ret0;

 L59443: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12196;
    case 41LL:
      goto L20152;
    case 150LL:
      goto L20184;
    case 163LL:
      goto L51340;
    default:
      break;
    }
  goto ret0;

 L12196: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L12197;
    }
  goto ret0;

 L12197: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L12198;
    }
  goto ret0;

 L12198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L12199;
    }
  goto ret0;

 L12199: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1111;  /* *avx512f_loaddquv16si_mask */
    }
  goto ret0;

 L20152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20153;
    }
  goto ret0;

 L20153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L20154;
    }
  goto ret0;

 L20154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L20155;
    }
  goto ret0;

 L20155: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1957;  /* avx512f_fix_notruncv16sfv16si_mask */
    }
  goto ret0;

 L20184: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20185;
    }
  goto ret0;

 L20185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L20186;
    }
  goto ret0;

 L20186: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L20187;
    }
  goto ret0;

 L20187: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1961;  /* avx512f_ufix_notruncv16sfv16si_mask */
    }
  goto ret0;

 L51340: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L51341;
    }
  goto ret0;

 L51341: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L51342;
    }
  goto ret0;

 L51342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L51343;
    }
  goto ret0;

 L51343: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD)))
    {
      return 4662;  /* conflictv16si_mask */
    }
  goto ret0;

 L59446: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 159)
    goto L24009;
  goto ret0;

 L24009: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L24010;
    }
  goto ret0;

 L24010: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L24011;
    }
  goto ret0;

 L24011: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L24012;
    }
  goto ret0;

 L24012: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24013;
    }
  goto ret0;

 L24013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SImode))
    {
      operands[5] = x2;
      goto L24014;
    }
 L24119: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24120;
  goto ret0;

 L24014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L24015;
    }
  x2 = XEXP (x1, 1);
  goto L24119;

 L24015: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2357;  /* avx512f_vternlogv16si_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24119;

 L24120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L24121;
    }
  goto ret0;

 L24121: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7713 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2368;  /* avx512f_vternlogv16si_mask */
    }
  goto ret0;

 L59447: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 162LL:
      goto L24420;
    case 147LL:
      goto L42670;
    case 149LL:
      goto L42969;
    case 148LL:
      goto L43156;
    default:
      break;
    }
  goto ret0;

 L24420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L24421;
    }
  goto ret0;

 L24421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L24422;
    }
  goto ret0;

 L24422: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L24423;
    }
  goto ret0;

 L24423: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[4] = x2;
      goto L24424;
    }
  goto ret0;

 L24424: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L24425;
    }
  goto ret0;

 L24425: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2403;  /* avx512f_alignv16si_mask */
    }
  goto ret0;

 L42670: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L42671;
    }
  goto ret0;

 L42671: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L42672;
    }
  goto ret0;

 L42672: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L42673;
    }
  goto ret0;

 L42673: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SImode))
    {
      operands[4] = x2;
      goto L42674;
    }
  goto ret0;

 L42674: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L42675;
    }
  goto ret0;

 L42675: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4088;  /* avx512f_vpermi2varv16si3_maskz_1 */
    }
  goto ret0;

 L42969: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L42970;
    }
  goto ret0;

 L42970: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L42971;
    }
  goto ret0;

 L42971: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L42972;
    }
  goto ret0;

 L42972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L42973;
  goto ret0;

 L42973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L42974;
    }
  goto ret0;

 L42974: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4123;  /* avx512f_vpermi2varv16si3_mask */
    }
  goto ret0;

 L43156: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L43157;
    }
  goto ret0;

 L43157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L43158;
    }
  goto ret0;

 L43158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L43159;
    }
  goto ret0;

 L43159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SImode))
    {
      operands[4] = x2;
      goto L43160;
    }
 L43458: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43459;
  goto ret0;

 L43160: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L43161;
    }
  x2 = XEXP (x1, 1);
  goto L43458;

 L43161: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4142;  /* avx512f_vpermt2varv16si3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43458;

 L43459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L43460;
    }
  goto ret0;

 L43460: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4177;  /* avx512f_vpermt2varv16si3_mask */
    }
  goto ret0;

 L59448: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 184LL:
      goto L29617;
    case 143LL:
      goto L41177;
    default:
      break;
    }
  goto ret0;

 L29617: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L29618;
    }
  goto ret0;

 L29618: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V32HImode))
    {
      operands[2] = x3;
      goto L29619;
    }
  goto ret0;

 L29619: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L29620;
    }
  goto ret0;

 L29620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29621;
    }
  goto ret0;

 L29621: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9586 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL)) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))))
    {
      return 2840;  /* avx512bw_pmaddwd512v32hi_mask */
    }
  goto ret0;

 L41177: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L41178;
    }
  goto ret0;

 L41178: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L41179;
    }
  goto ret0;

 L41179: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L41180;
    }
  goto ret0;

 L41180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L41181;
    }
  goto ret0;

 L41181: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 537 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3888;  /* avx512f_permvarv16si_mask */
    }
  goto ret0;

 L20410: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20411;
    }
  goto ret0;

 L20411: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L20412;
    }
  goto ret0;

 L20412: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L20413;
    }
  goto ret0;

 L20413: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1989;  /* fix_truncv16sfv16si2_mask */
    }
  goto ret0;

 L20442: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20443;
    }
  goto ret0;

 L20443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L20444;
    }
  goto ret0;

 L20444: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L20445;
    }
  goto ret0;

 L20445: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1993;  /* ufix_truncv16sfv16si2_mask */
    }
  goto ret0;

 L28404: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L28405;
    }
  goto ret0;

 L28405: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L28406;
    }
  goto ret0;

 L28406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L28407;
    }
  goto ret0;

 L28407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28408;
    }
  goto ret0;

 L28408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V16SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2714;  /* *addv16si3 */
    }
 L28582: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (PLUS, V16SImode, operands)))
    {
      return 2737;  /* *addv16si3_mask */
    }
  goto ret0;

 L28419: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L28420;
    }
  goto ret0;

 L28420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L28421;
    }
  goto ret0;

 L28421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L28422;
    }
  goto ret0;

 L28422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L28423;
    }
  goto ret0;

 L28423: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V16SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2716;  /* *subv16si3 */
    }
 L28591: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (MINUS, V16SImode, operands)))
    {
      return 2738;  /* *subv16si3_mask */
    }
  goto ret0;

 L29797: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L29798;
    }
  goto ret0;

 L29798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L29799;
    }
  goto ret0;

 L29799: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L29800;
    }
  goto ret0;

 L29800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29801;
    }
  goto ret0;

 L29801: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V16SImode, operands) && (64 == 64 || TARGET_AVX512VL)) && 
#line 330 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2854;  /* *avx512f_mulv16si3_mask */
    }
  goto ret0;

 L29971: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59454;
  goto ret0;

 L59454: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L29972;
    }
 L59455: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L44147;
    }
  goto ret0;

 L29972: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29973;
    }
  x3 = XEXP (x2, 0);
  goto L59455;

 L29973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L29974;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59455;

 L29974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L29975;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59455;

 L29975: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2878;  /* ashrv16si3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59455;

 L44147: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L44148;
    }
  goto ret0;

 L44148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L44149;
    }
  goto ret0;

 L44149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44150;
    }
  goto ret0;

 L44150: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 336 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4251;  /* avx512f_ashrvv16si_mask */
    }
  goto ret0;

 L30211: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59456;
  goto ret0;

 L59456: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30212;
    }
 L59457: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L44252;
    }
  goto ret0;

 L30212: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30213;
    }
  x3 = XEXP (x2, 0);
  goto L59457;

 L30213: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30214;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59457;

 L30214: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30215;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59457;

 L30215: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL))))
    {
      return 2910;  /* ashlv16si3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59457;

 L44252: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L44253;
    }
  goto ret0;

 L44253: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L44254;
    }
  goto ret0;

 L44254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44255;
    }
  goto ret0;

 L44255: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 410 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4265;  /* avx512f_ashlvv16si_mask */
    }
  goto ret0;

 L30226: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59458;
  goto ret0;

 L59458: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30227;
    }
 L59459: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L44267;
    }
  goto ret0;

 L30227: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30228;
    }
  x3 = XEXP (x2, 0);
  goto L59459;

 L30228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30229;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59459;

 L30229: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30230;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59459;

 L30230: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL))))
    {
      return 2912;  /* lshrv16si3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59459;

 L44267: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L44268;
    }
  goto ret0;

 L44268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L44269;
    }
  goto ret0;

 L44269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44270;
    }
  goto ret0;

 L44270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 410 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4267;  /* avx512f_lshrvv16si_mask */
    }
  goto ret0;

 L30307: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59460;
  goto ret0;

 L59460: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30308;
    }
 L59461: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30488;
    }
  goto ret0;

 L30308: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L30309;
    }
  x3 = XEXP (x2, 0);
  goto L59461;

 L30309: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30310;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59461;

 L30310: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30311;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59461;

 L30311: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2924;  /* avx512f_rolvv16si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59461;

 L30488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30489;
    }
  goto ret0;

 L30489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30490;
    }
  goto ret0;

 L30490: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30491;
    }
  goto ret0;

 L30491: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2948;  /* avx512f_rolv16si_mask */
    }
  goto ret0;

 L30322: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59462;
  goto ret0;

 L59462: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30323;
    }
 L59463: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30503;
    }
  goto ret0;

 L30323: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L30324;
    }
  x3 = XEXP (x2, 0);
  goto L59463;

 L30324: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30325;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59463;

 L30325: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30326;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59463;

 L30326: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2926;  /* avx512f_rorvv16si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59463;

 L30503: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30504;
    }
  goto ret0;

 L30504: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30505;
    }
  goto ret0;

 L30505: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30506;
    }
  goto ret0;

 L30506: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2950;  /* avx512f_rorv16si_mask */
    }
  goto ret0;

 L30739: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30740;
    }
  goto ret0;

 L30740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L30741;
    }
  goto ret0;

 L30741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30742;
    }
  goto ret0;

 L30742: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30743;
    }
  goto ret0;

 L30743: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V16SImode, operands))))
    {
      return 2984;  /* *avx512bw_smaxv16si3_mask */
    }
  goto ret0;

 L30754: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30755;
    }
  goto ret0;

 L30755: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L30756;
    }
  goto ret0;

 L30756: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30757;
    }
  goto ret0;

 L30757: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30758;
    }
  goto ret0;

 L30758: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V16SImode, operands))))
    {
      return 2986;  /* *avx512bw_sminv16si3_mask */
    }
  goto ret0;

 L30769: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30770;
    }
  goto ret0;

 L30770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L30771;
    }
  goto ret0;

 L30771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30772;
    }
  goto ret0;

 L30772: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30773;
    }
  goto ret0;

 L30773: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V16SImode, operands))))
    {
      return 2988;  /* *avx512bw_umaxv16si3_mask */
    }
  goto ret0;

 L30784: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L30785;
    }
  goto ret0;

 L30785: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L30786;
    }
  goto ret0;

 L30786: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L30787;
    }
  goto ret0;

 L30787: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L30788;
    }
  goto ret0;

 L30788: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V16SImode, operands))))
    {
      return 2990;  /* *avx512bw_uminv16si3_mask */
    }
  goto ret0;

 L32036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L59464;
  goto ret0;

 L59464: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32037;
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L32360;
    }
  goto ret0;

 L32037: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L32038;
    }
  goto ret0;

 L32038: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L32039;
    }
  goto ret0;

 L32039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L32040;
    }
  goto ret0;

 L32040: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32041;
    }
  goto ret0;

 L32041: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3164;  /* *andnotv16si3 */
    }
 L32238: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10881 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3187;  /* *andnotv16si3_mask */
    }
  goto ret0;

 L32360: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L32361;
    }
  goto ret0;

 L32361: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L32362;
    }
  goto ret0;

 L32362: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32363;
    }
  goto ret0;

 L32363: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V16SImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3200;  /* andv16si3_mask */
    }
  goto ret0;

 L32374: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L32375;
    }
  goto ret0;

 L32375: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L32376;
    }
  goto ret0;

 L32376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L32377;
    }
  goto ret0;

 L32377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32378;
    }
  goto ret0;

 L32378: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V16SImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3202;  /* iorv16si3_mask */
    }
  goto ret0;

 L32389: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L32390;
    }
  goto ret0;

 L32390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L32391;
    }
  goto ret0;

 L32391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L32392;
    }
  goto ret0;

 L32392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L32393;
    }
  goto ret0;

 L32393: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V16SImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3204;  /* xorv16si3_mask */
    }
  goto ret0;

 L34345: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V32SImode:
      goto L59466;
    case V16SImode:
      goto L59467;
    default:
      break;
    }
  goto ret0;

 L59466: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L34346;
  goto ret0;

 L34346: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L34347;
    }
  goto ret0;

 L34347: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L34348;
    }
  goto ret0;

 L34348: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L34349;
  goto ret0;

 L34349: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59468;
  goto ret0;

 L59468: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 2LL:
        goto L34350;
      case 0LL:
        goto L34460;
      default:
        break;
      }
 L59470: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35130;
    }
  goto ret0;

 L34350: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L34351;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34351: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34352;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34352: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L34353;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34353: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34354;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34354: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L34355;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34355: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34356;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34356: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L34357;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34357: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34358;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34358: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L34359;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34359: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34360;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34360: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L34361;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34361: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34362;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34362: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L34363;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34363: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34364;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34364: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L34365;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34365: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L34366;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34366: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34367;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34367: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3364;  /* avx512f_interleave_highv16si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34460: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L34461;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34461: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34462;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34462: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L34463;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34463: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34464;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34464: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L34465;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34465: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34466;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34466: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L34467;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34467: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34468;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34468: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L34469;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34469: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34470;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34470: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L34471;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34471: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34472;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34472: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L34473;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34473: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34474;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34474: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L34475;
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L34476;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34477;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L34477: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3370;  /* avx512f_interleave_lowv16si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59470;

 L35130: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35131;
    }
  goto ret0;

 L35131: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35132;
    }
  goto ret0;

 L35132: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35133;
    }
  goto ret0;

 L35133: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35134;
    }
  goto ret0;

 L35134: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35135;
    }
  goto ret0;

 L35135: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35136;
    }
  goto ret0;

 L35136: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L35137;
    }
  goto ret0;

 L35137: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[11] = x4;
      goto L35138;
    }
  goto ret0;

 L35138: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[12] = x4;
      goto L35139;
    }
  goto ret0;

 L35139: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[13] = x4;
      goto L35140;
    }
  goto ret0;

 L35140: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[14] = x4;
      goto L35141;
    }
  goto ret0;

 L35141: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[15] = x4;
      goto L35142;
    }
  goto ret0;

 L35142: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[16] = x4;
      goto L35143;
    }
  goto ret0;

 L35143: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[17] = x4;
      goto L35144;
    }
  goto ret0;

 L35144: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[18] = x4;
      goto L35145;
    }
  goto ret0;

 L35145: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[19] = x2;
      goto L35146;
    }
  goto ret0;

 L35146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[20] = x2;
      goto L35147;
    }
  goto ret0;

 L35147: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3)
       && INTVAL (operands[11]) == (INTVAL (operands[12]) - 1)
       && INTVAL (operands[11]) == (INTVAL (operands[13]) - 2)
       && INTVAL (operands[11]) == (INTVAL (operands[14]) - 3)
       && INTVAL (operands[15]) == (INTVAL (operands[16]) - 1)
       && INTVAL (operands[15]) == (INTVAL (operands[17]) - 2)
       && INTVAL (operands[15]) == (INTVAL (operands[18]) - 3)))))
    {
      return 3416;  /* avx512f_shuf_i32x4_1_mask */
    }
  goto ret0;

 L59467: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L35175;
    }
  goto ret0;

 L35175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L35176;
  goto ret0;

 L35176: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35177;
    }
  goto ret0;

 L35177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35178;
    }
  goto ret0;

 L35178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35179;
    }
  goto ret0;

 L35179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35180;
    }
  goto ret0;

 L35180: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35181;
    }
  goto ret0;

 L35181: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35182;
    }
  goto ret0;

 L35182: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35183;
    }
  goto ret0;

 L35183: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35184;
    }
  goto ret0;

 L35184: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L35185;
    }
  goto ret0;

 L35185: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[11] = x4;
      goto L35186;
    }
  goto ret0;

 L35186: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[12] = x4;
      goto L35187;
    }
  goto ret0;

 L35187: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[13] = x4;
      goto L35188;
    }
  goto ret0;

 L35188: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[14] = x4;
      goto L35189;
    }
  goto ret0;

 L35189: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[15] = x4;
      goto L35190;
    }
  goto ret0;

 L35190: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[16] = x4;
      goto L35191;
    }
  goto ret0;

 L35191: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[17] = x4;
      goto L35192;
    }
  goto ret0;

 L35192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[18] = x2;
      goto L35193;
    }
  goto ret0;

 L35193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[19] = x2;
      goto L35194;
    }
  goto ret0;

 L35194: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12093 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 4 == INTVAL (operands[9])
   && INTVAL (operands[2]) + 8 == INTVAL (operands[10])
   && INTVAL (operands[3]) + 8 == INTVAL (operands[11])
   && INTVAL (operands[4]) + 8 == INTVAL (operands[12])
   && INTVAL (operands[5]) + 8 == INTVAL (operands[13])
   && INTVAL (operands[2]) + 12 == INTVAL (operands[14])
   && INTVAL (operands[3]) + 12 == INTVAL (operands[15])
   && INTVAL (operands[4]) + 12 == INTVAL (operands[16])
   && INTVAL (operands[5]) + 12 == INTVAL (operands[17]))))
    {
      return 3418;  /* avx512f_pshufd_1_mask */
    }
  goto ret0;

 L34605: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L34606;
    }
  goto ret0;

 L34606: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16SImode
      && GET_CODE (x3) == VEC_DUPLICATE)
    goto L34607;
  goto ret0;

 L34607: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L34608;
    }
  goto ret0;

 L34608: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L34609;
    }
  goto ret0;

 L34609: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[4] = x2;
      goto L34610;
    }
  goto ret0;

 L34610: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L34611;
    }
  goto ret0;

 L34611: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3384;  /* avx512f_vinserti32x4_1_mask */
    }
  goto ret0;

 L34665: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L34666;
    }
  goto ret0;

 L34666: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L34667;
  goto ret0;

 L34667: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L34668;
    }
  goto ret0;

 L34668: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L34669;
  goto ret0;

 L34669: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (GET_CODE (x5) == CONST_INT)
    goto L59471;
  goto ret0;

 L59471: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x5, 0) == XWINT (x5, 0))
    switch ((int) XWINT (x5, 0))
      {
      case 8LL:
        goto L34670;
      case 0LL:
        goto L34738;
      default:
        break;
      }
  goto ret0;

 L34670: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34671;
  goto ret0;

 L34671: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34672;
  goto ret0;

 L34672: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34673;
  goto ret0;

 L34673: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34674;
  goto ret0;

 L34674: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34675;
  goto ret0;

 L34675: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34676;
  goto ret0;

 L34676: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34677;
  goto ret0;

 L34677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L34678;
    }
  goto ret0;

 L34678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34679;
    }
  goto ret0;

 L34679: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 3388;  /* vec_set_lo_v16si_mask */
    }
  goto ret0;

 L34738: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34739;
  goto ret0;

 L34739: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34740;
  goto ret0;

 L34740: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34741;
  goto ret0;

 L34741: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34742;
  goto ret0;

 L34742: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34743;
  goto ret0;

 L34743: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34744;
  goto ret0;

 L34744: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34745;
  goto ret0;

 L34745: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L34746;
    }
  goto ret0;

 L34746: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34747;
    }
  goto ret0;

 L34747: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11763 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 3392;  /* vec_set_hi_v16si_mask */
    }
  goto ret0;

 L37874: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L37875;
    }
  goto ret0;

 L37875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L37876;
    }
  goto ret0;

 L37876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L37877;
    }
  goto ret0;

 L37877: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3552;  /* absv16si2_mask */
    }
  goto ret0;

 L38374: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L59473;
    case V16HImode:
      goto L59474;
    default:
      break;
    }
  goto ret0;

 L59473: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38375;
    }
  goto ret0;

 L38375: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L38376;
    }
  goto ret0;

 L38376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L38377;
    }
  goto ret0;

 L38377: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3618;  /* avx512f_sign_extendv16qiv16si2_mask */
    }
  goto ret0;

 L59474: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L38513;
    }
  goto ret0;

 L38513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L38514;
    }
  goto ret0;

 L38514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L38515;
    }
  goto ret0;

 L38515: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3630;  /* avx512f_sign_extendv16hiv16si2_mask */
    }
  goto ret0;

 L38387: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L59475;
    case V16HImode:
      goto L59476;
    default:
      break;
    }
  goto ret0;

 L59475: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38388;
    }
  goto ret0;

 L38388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L38389;
    }
  goto ret0;

 L38389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L38390;
    }
  goto ret0;

 L38390: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3620;  /* avx512f_zero_extendv16qiv16si2_mask */
    }
  goto ret0;

 L59476: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L38526;
    }
  goto ret0;

 L38526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L38527;
    }
  goto ret0;

 L38527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L38528;
    }
  goto ret0;

 L38528: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3632;  /* avx512f_zero_extendv16hiv16si2_mask */
    }
  goto ret0;

 L41492: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59477;
    case V4SImode:
      goto L59478;
    case V2SImode:
      goto L59480;
    case V8SImode:
      goto L59481;
    default:
      break;
    }
  goto ret0;

 L59477: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41493;
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L41945;
    }
  goto ret0;

 L41493: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L41494;
    }
  goto ret0;

 L41494: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41495;
  goto ret0;

 L41495: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41496;
  goto ret0;

 L41496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L41497;
    }
  goto ret0;

 L41497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41498;
    }
  goto ret0;

 L41498: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3926;  /* avx512f_vec_dupv16si_mask */
    }
  goto ret0;

 L41945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L41946;
    }
  goto ret0;

 L41946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41947;
    }
  goto ret0;

 L41947: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3982;  /* avx512f_vec_dup_gprv16si_mask */
    }
  goto ret0;

 L59478: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L41828;
    }
  goto ret0;

 L41828: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L41829;
    }
  goto ret0;

 L41829: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41830;
    }
  goto ret0;

 L41830: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3964;  /* avx512f_broadcastv16si_mask */
    }
  goto ret0;

 L59480: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L42219;
  goto ret0;

 L42219: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L42220;
    }
  goto ret0;

 L42220: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L42221;
  goto ret0;

 L42221: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42222;
  goto ret0;

 L42222: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L42223;
  goto ret0;

 L42223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L42224;
    }
  goto ret0;

 L42224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L42225;
    }
  goto ret0;

 L42225: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4029;  /* avx512dq_broadcastv16si_mask */
    }
  goto ret0;

 L59481: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L42355;
    }
  goto ret0;

 L42355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L42356;
    }
  goto ret0;

 L42356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L42357;
    }
  goto ret0;

 L42357: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16904 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4045;  /* avx512dq_broadcastv16si_mask_1 */
    }
  goto ret0;

 L51262: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L51263;
    }
  goto ret0;

 L51263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L51264;
    }
  goto ret0;

 L51264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L51265;
    }
  goto ret0;

 L51265: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD)))
    {
      return 4650;  /* clzv16si2_mask */
    }
  goto ret0;

 L11558: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L11559;
    }
  x2 = XEXP (x1, 0);
  goto L59394;

 L11559: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11560;
    }
  x2 = XEXP (x1, 0);
  goto L59394;

 L11560: ATTRIBUTE_UNUSED_LABEL
  if (
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1018;  /* avx512f_loadv16si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59394;

 L11684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L11685;
    }
  x2 = XEXP (x1, 0);
  goto L59419;

 L11685: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11686;
    }
  x2 = XEXP (x1, 0);
  goto L59419;

 L11686: ATTRIBUTE_UNUSED_LABEL
  if (
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1036;  /* avx512f_blendmv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59419;

 L34597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SImode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L34598;
  goto ret0;

 L34598: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L34599;
    }
  goto ret0;

 L34599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34600;
    }
  goto ret0;

 L34600: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3383;  /* *avx512f_vinserti32x4_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_52 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L59482;
    case 4:
      goto L59485;
    case 3:
      goto L59486;
    case 2:
      goto L59487;
    default:
      break;
    }
  goto ret0;

 L59482: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12190;
    case 41LL:
      goto L20138;
    case 150LL:
      goto L20170;
    case 163LL:
      goto L51334;
    default:
      break;
    }
  goto ret0;

 L12190: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L12191;
    }
  goto ret0;

 L12191: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1110;  /* *avx512f_loaddquv16si */
    }
  goto ret0;

 L20138: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L20139;
    }
  goto ret0;

 L20139: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4070 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1955;  /* *avx512f_fix_notruncv16sfv16si */
    }
  goto ret0;

 L20170: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L20171;
    }
  goto ret0;

 L20171: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1959;  /* *avx512f_ufix_notruncv16sfv16si */
    }
  goto ret0;

 L51334: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L51335;
    }
  goto ret0;

 L51335: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD))
    {
      return 4661;  /* *conflictv16si */
    }
  goto ret0;

 L59485: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 159)
    goto L24000;
  goto ret0;

 L24000: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L24001;
    }
  goto ret0;

 L24001: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L24002;
    }
  goto ret0;

 L24002: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L24003;
    }
  goto ret0;

 L24003: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24004;
    }
  goto ret0;

 L24004: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2356;  /* avx512f_vternlogv16si */
    }
  goto ret0;

 L59486: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 162LL:
      goto L24412;
    case 147LL:
      goto L42662;
    case 148LL:
      goto L43148;
    case 145LL:
      goto L46913;
    case 164LL:
      goto L50403;
    case 166LL:
      goto L50571;
    default:
      break;
    }
  goto ret0;

 L24412: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L24413;
    }
  goto ret0;

 L24413: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L24414;
    }
  goto ret0;

 L24414: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24415;
    }
  goto ret0;

 L24415: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2402;  /* *avx512f_alignv16si */
    }
  goto ret0;

 L42662: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L42663;
    }
  goto ret0;

 L42663: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L42664;
    }
  goto ret0;

 L42664: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L42665;
    }
  goto ret0;

 L42665: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4087;  /* avx512f_vpermi2varv16si3 */
    }
  goto ret0;

 L43148: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L43149;
    }
  goto ret0;

 L43149: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L43150;
    }
  goto ret0;

 L43150: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L43151;
    }
  goto ret0;

 L43151: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4141;  /* avx512f_vpermt2varv16si3 */
    }
  goto ret0;

 L46913: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L59495;
    case V8SImode:
      goto L59496;
    default:
      break;
    }
 L47513: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L47514;
  goto ret0;

 L59495: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L46914;
    }
  goto L47513;

 L46914: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, HImode))
    {
      operands[7] = x2;
      goto L46915;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46915: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L46916;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59497;
    case DImode:
      goto L59498;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L59497: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46917;
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46917: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L46918;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46918: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[3] = x4;
      goto L46919;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46920;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46920: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4401;  /* *avx512f_gathersiv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L59498: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46942;
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46942: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L46943;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46943: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[3] = x4;
      goto L46944;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46944: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46945;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L46945: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4402;  /* *avx512f_gathersiv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L59496: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L48114;
    }
  goto L47513;

 L48114: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L48115;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48115: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L48116;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48116: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59499;
    case DImode:
      goto L59500;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L59499: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48117;
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48117: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48118;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48118: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48119;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48119: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48120;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48120: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4449;  /* *avx512f_gatherdiv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L59500: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48142;
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48142: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L48143;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48143: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48144;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48144: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48145;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L48145: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4450;  /* *avx512f_gatherdiv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47513;

 L47514: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L59501;
    case QImode:
      goto L59502;
    default:
      break;
    }
  goto ret0;

 L59501: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L47515;
    }
  goto ret0;

 L47515: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[5] = x2;
      goto L47516;
    }
  goto ret0;

 L47516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59503;
    case DImode:
      goto L59504;
    default:
      break;
    }
  goto ret0;

 L59503: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47517;
  goto ret0;

 L47517: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47518;
    }
  goto ret0;

 L47518: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L47519;
    }
  goto ret0;

 L47519: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47520;
    }
  goto ret0;

 L47520: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4425;  /* *avx512f_gathersiv16si_2 */
    }
  goto ret0;

 L59504: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47542;
  goto ret0;

 L47542: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47543;
    }
  goto ret0;

 L47543: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L47544;
    }
  goto ret0;

 L47544: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47545;
    }
  goto ret0;

 L47545: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4426;  /* *avx512f_gathersiv16si_2 */
    }
  goto ret0;

 L59502: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L48715;
    }
  goto ret0;

 L48715: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[5] = x2;
      goto L48716;
    }
  goto ret0;

 L48716: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59505;
    case DImode:
      goto L59506;
    default:
      break;
    }
  goto ret0;

 L59505: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48717;
  goto ret0;

 L48717: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L48718;
    }
  goto ret0;

 L48718: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48719;
    }
  goto ret0;

 L48719: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48720;
    }
  goto ret0;

 L48720: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4473;  /* *avx512f_gatherdiv16si_2 */
    }
  goto ret0;

 L59506: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48742;
  goto ret0;

 L48742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L48743;
    }
  goto ret0;

 L48743: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48744;
    }
  goto ret0;

 L48744: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48745;
    }
  goto ret0;

 L48745: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4474;  /* *avx512f_gatherdiv16si_2 */
    }
  goto ret0;

 L50403: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L50404;
    }
  goto ret0;

 L50404: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L50405;
    }
  goto ret0;

 L50405: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L50406;
    }
  goto ret0;

 L50406: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4545;  /* avx512f_compressv16si_mask */
    }
  goto ret0;

 L50571: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L50572;
    }
  goto ret0;

 L50572: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L50573;
    }
  goto ret0;

 L50573: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L50574;
    }
  goto ret0;

 L50574: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4569;  /* avx512f_expandv16si_mask */
    }
  goto ret0;

 L59487: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 184LL:
      goto L29610;
    case 143LL:
      goto L41170;
    default:
      break;
    }
  goto ret0;

 L29610: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L29611;
    }
  goto ret0;

 L29611: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[2] = x2;
      goto L29612;
    }
  goto ret0;

 L29612: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9586 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2839;  /* avx512bw_pmaddwd512v32hi */
    }
  goto ret0;

 L41170: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L41171;
    }
  goto ret0;

 L41171: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L41172;
    }
  goto ret0;

 L41172: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 537 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3887;  /* avx512f_permvarv16si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_53 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11557;
    case UNSPEC:
      goto L59380;
    case FIX:
      goto L20396;
    case UNSIGNED_FIX:
      goto L20428;
    case PLUS:
      goto L28397;
    case MINUS:
      goto L28412;
    case MULT:
      goto L29790;
    case ASHIFTRT:
      goto L29964;
    case ASHIFT:
      goto L30204;
    case LSHIFTRT:
      goto L30219;
    case ROTATE:
      goto L30300;
    case ROTATERT:
      goto L30315;
    case SMAX:
      goto L30732;
    case SMIN:
      goto L30747;
    case UMAX:
      goto L30762;
    case UMIN:
      goto L30777;
    case AND:
      goto L32028;
    case IOR:
      goto L32367;
    case XOR:
      goto L32382;
    case VEC_SELECT:
      goto L34321;
    case VEC_CONCAT:
      goto L34649;
    case ABS:
      goto L37843;
    case SIGN_EXTEND:
      goto L38368;
    case ZERO_EXTEND:
      goto L38381;
    case IF_THEN_ELSE:
      goto L40044;
    case VEC_DUPLICATE:
      goto L41028;
    case CLZ:
      goto L51256;
    default:
     break;
   }
  goto ret0;

 L11557: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59395;
 L22019: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L22020;
    }
  goto ret0;

 L59395: ATTRIBUTE_UNUSED_LABEL
  tem = recog_51 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L22019;

 L22020: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L22021;
    }
  goto ret0;

 L22021: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L22022;
    }
  goto ret0;

 L22022: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 2195;  /* *avx512f_cvtmask2dv16si */
    }
  goto ret0;

 L59380: ATTRIBUTE_UNUSED_LABEL
  return recog_52 (x0, insn, pnum_clobbers);

 L20396: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L20397;
    }
  goto ret0;

 L20397: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4137 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1987;  /* fix_truncv16sfv16si2 */
    }
  goto ret0;

 L20428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L20429;
    }
  goto ret0;

 L20429: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4137 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1991;  /* ufix_truncv16sfv16si2 */
    }
  goto ret0;

 L28397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L28398;
    }
  goto ret0;

 L28398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L28399;
    }
  goto ret0;

 L28399: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V16SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2713;  /* *addv16si3 */
    }
  goto ret0;

 L28412: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L28413;
    }
  goto ret0;

 L28413: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L28414;
    }
  goto ret0;

 L28414: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V16SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2715;  /* *subv16si3 */
    }
  goto ret0;

 L29790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L29791;
    }
  goto ret0;

 L29791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L29792;
    }
  goto ret0;

 L29792: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V16SImode, operands) && 1) && 
#line 330 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2853;  /* *avx512f_mulv16si3 */
    }
  goto ret0;

 L29964: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59507;
  goto ret0;

 L59507: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L29965;
    }
 L59508: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L44140;
    }
  goto ret0;

 L29965: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29966;
    }
  x2 = XEXP (x1, 0);
  goto L59508;

 L29966: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9948 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2877;  /* ashrv16si3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59508;

 L44140: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L44141;
    }
  goto ret0;

 L44141: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 336 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4250;  /* avx512f_ashrvv16si */
    }
  goto ret0;

 L30204: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59509;
  goto ret0;

 L59509: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30205;
    }
 L59510: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L44245;
    }
  goto ret0;

 L30205: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30206;
    }
  x2 = XEXP (x1, 0);
  goto L59510;

 L30206: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 2909;  /* ashlv16si3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59510;

 L44245: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L44246;
    }
  goto ret0;

 L44246: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 410 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4264;  /* avx512f_ashlvv16si */
    }
  goto ret0;

 L30219: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59511;
  goto ret0;

 L59511: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30220;
    }
 L59512: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L44260;
    }
  goto ret0;

 L30220: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30221;
    }
  x2 = XEXP (x1, 0);
  goto L59512;

 L30221: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 2911;  /* lshrv16si3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59512;

 L44260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L44261;
    }
  goto ret0;

 L44261: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 410 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4266;  /* avx512f_lshrvv16si */
    }
  goto ret0;

 L30300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59513;
  goto ret0;

 L59513: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30301;
    }
 L59514: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30481;
    }
  goto ret0;

 L30301: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L30302;
    }
  x2 = XEXP (x1, 0);
  goto L59514;

 L30302: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2923;  /* avx512f_rolvv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59514;

 L30481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30482;
    }
  goto ret0;

 L30482: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2947;  /* avx512f_rolv16si */
    }
  goto ret0;

 L30315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59515;
  goto ret0;

 L59515: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30316;
    }
 L59516: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30496;
    }
  goto ret0;

 L30316: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L30317;
    }
  x2 = XEXP (x1, 0);
  goto L59516;

 L30317: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2925;  /* avx512f_rorvv16si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59516;

 L30496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30497;
    }
  goto ret0;

 L30497: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2949;  /* avx512f_rorv16si */
    }
  goto ret0;

 L30732: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30733;
    }
  goto ret0;

 L30733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L30734;
    }
  goto ret0;

 L30734: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V16SImode, operands)))
    {
      return 2983;  /* *avx512bw_smaxv16si3 */
    }
  goto ret0;

 L30747: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30748;
    }
  goto ret0;

 L30748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L30749;
    }
  goto ret0;

 L30749: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V16SImode, operands)))
    {
      return 2985;  /* *avx512bw_sminv16si3 */
    }
  goto ret0;

 L30762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30763;
    }
  goto ret0;

 L30763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L30764;
    }
  goto ret0;

 L30764: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V16SImode, operands)))
    {
      return 2987;  /* *avx512bw_umaxv16si3 */
    }
  goto ret0;

 L30777: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L30778;
    }
  goto ret0;

 L30778: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L30779;
    }
  goto ret0;

 L30779: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V16SImode, operands)))
    {
      return 2989;  /* *avx512bw_uminv16si3 */
    }
  goto ret0;

 L32028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59517;
  goto ret0;

 L59517: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32029;
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L32353;
    }
  goto ret0;

 L32029: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L32030;
    }
  goto ret0;

 L32030: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L32031;
    }
  goto ret0;

 L32031: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3163;  /* *andnotv16si3 */
    }
  goto ret0;

 L32353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L32354;
    }
  goto ret0;

 L32354: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V16SImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3199;  /* *andv16si3 */
    }
  goto ret0;

 L32367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L32368;
    }
  goto ret0;

 L32368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L32369;
    }
  goto ret0;

 L32369: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V16SImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3201;  /* *iorv16si3 */
    }
  goto ret0;

 L32382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L32383;
    }
  goto ret0;

 L32383: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L32384;
    }
  goto ret0;

 L32384: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V16SImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3203;  /* *xorv16si3 */
    }
  goto ret0;

 L34321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V32SImode:
      goto L59519;
    case V16SImode:
      goto L59520;
    default:
      break;
    }
  goto ret0;

 L59519: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L34322;
  goto ret0;

 L34322: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L34323;
    }
  goto ret0;

 L34323: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L34324;
    }
  goto ret0;

 L34324: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L34325;
  goto ret0;

 L34325: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L59521;
  goto ret0;

 L59521: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L34326;
      case 0LL:
        goto L34436;
      default:
        break;
      }
 L59523: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35105;
    }
  goto ret0;

 L34326: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L34327;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34328;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L34329;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34329: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34330;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34330: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L34331;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34331: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34332;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34332: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L34333;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34333: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34334;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34334: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L34335;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34335: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34336;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34336: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L34337;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34337: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34338;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34338: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L34339;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34339: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34340;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34340: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 11482 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3363;  /* *avx512f_interleave_highv16si */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34436: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L34437;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34437: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34438;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34438: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L34439;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34439: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34440;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34440: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L34441;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34442;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L34443;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34444;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L34445;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34446;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34446: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L34447;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34447: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34448;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34448: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L34449;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34449: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34450;
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L34450: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)]
      && 
#line 11537 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3369;  /* *avx512f_interleave_lowv16si */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59523;

 L35105: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35106;
    }
  goto ret0;

 L35106: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35107;
    }
  goto ret0;

 L35107: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35108;
    }
  goto ret0;

 L35108: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35109;
    }
  goto ret0;

 L35109: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35110;
    }
  goto ret0;

 L35110: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35111;
    }
  goto ret0;

 L35111: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L35112;
    }
  goto ret0;

 L35112: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[11] = x3;
      goto L35113;
    }
  goto ret0;

 L35113: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[12] = x3;
      goto L35114;
    }
  goto ret0;

 L35114: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[13] = x3;
      goto L35115;
    }
  goto ret0;

 L35115: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[14] = x3;
      goto L35116;
    }
  goto ret0;

 L35116: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[15] = x3;
      goto L35117;
    }
  goto ret0;

 L35117: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[16] = x3;
      goto L35118;
    }
  goto ret0;

 L35118: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[17] = x3;
      goto L35119;
    }
  goto ret0;

 L35119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[18] = x3;
      goto L35120;
    }
  goto ret0;

 L35120: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3)
       && INTVAL (operands[11]) == (INTVAL (operands[12]) - 1)
       && INTVAL (operands[11]) == (INTVAL (operands[13]) - 2)
       && INTVAL (operands[11]) == (INTVAL (operands[14]) - 3)
       && INTVAL (operands[15]) == (INTVAL (operands[16]) - 1)
       && INTVAL (operands[15]) == (INTVAL (operands[17]) - 2)
       && INTVAL (operands[15]) == (INTVAL (operands[18]) - 3))))
    {
      return 3415;  /* avx512f_shuf_i32x4_1 */
    }
  goto ret0;

 L59520: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L35152;
    }
  goto ret0;

 L35152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L35153;
  goto ret0;

 L35153: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35154;
    }
  goto ret0;

 L35154: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35155;
    }
  goto ret0;

 L35155: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35156;
    }
  goto ret0;

 L35156: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35157;
    }
  goto ret0;

 L35157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35158;
    }
  goto ret0;

 L35158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35159;
    }
  goto ret0;

 L35159: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35160;
    }
  goto ret0;

 L35160: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35161;
    }
  goto ret0;

 L35161: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L35162;
    }
  goto ret0;

 L35162: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[11] = x3;
      goto L35163;
    }
  goto ret0;

 L35163: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[12] = x3;
      goto L35164;
    }
  goto ret0;

 L35164: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[13] = x3;
      goto L35165;
    }
  goto ret0;

 L35165: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[14] = x3;
      goto L35166;
    }
  goto ret0;

 L35166: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[15] = x3;
      goto L35167;
    }
  goto ret0;

 L35167: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[16] = x3;
      goto L35168;
    }
  goto ret0;

 L35168: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[17] = x3;
      goto L35169;
    }
  goto ret0;

 L35169: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12093 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 4 == INTVAL (operands[9])
   && INTVAL (operands[2]) + 8 == INTVAL (operands[10])
   && INTVAL (operands[3]) + 8 == INTVAL (operands[11])
   && INTVAL (operands[4]) + 8 == INTVAL (operands[12])
   && INTVAL (operands[5]) + 8 == INTVAL (operands[13])
   && INTVAL (operands[2]) + 12 == INTVAL (operands[14])
   && INTVAL (operands[3]) + 12 == INTVAL (operands[15])
   && INTVAL (operands[4]) + 12 == INTVAL (operands[16])
   && INTVAL (operands[5]) + 12 == INTVAL (operands[17])))
    {
      return 3417;  /* avx512f_pshufd_1 */
    }
  goto ret0;

 L34649: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59524;
  goto ret0;

 L59524: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L34650;
    }
 L59525: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44563;
    }
  goto ret0;

 L34650: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L34651;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34651: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L34652;
    }
  x2 = XEXP (x1, 0);
  goto L59525;

 L34652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L34653;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34653: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59526;
  x2 = XEXP (x1, 0);
  goto L59525;

 L59526: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 8LL:
        goto L34654;
      case 0LL:
        goto L34722;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  goto L59525;

 L34654: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34655;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34655: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34656;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34656: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34657;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34657: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34658;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34658: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34659;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34659: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34660;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34660: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 11746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 3387;  /* vec_set_lo_v16si */
    }
  x2 = XEXP (x1, 0);
  goto L59525;

 L34722: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34723;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34723: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34724;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34724: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34725;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34725: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34726;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34726: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34727;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34727: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34728;
  x2 = XEXP (x1, 0);
  goto L59525;

 L34728: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 11763 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 3391;  /* vec_set_hi_v16si */
    }
  x2 = XEXP (x1, 0);
  goto L59525;

 L44563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44564;
    }
  goto ret0;

 L44564: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 211 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4308;  /* avx_vec_concatv16si */
    }
  goto ret0;

 L37843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L37844;
    }
  goto ret0;

 L37844: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13854 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3546;  /* *absv16si2 */
    }
  goto ret0;

 L38368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L59528;
    case V16HImode:
      goto L59529;
    default:
      break;
    }
  goto ret0;

 L59528: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L38369;
    }
  goto ret0;

 L38369: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14259 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3617;  /* *avx512f_sign_extendv16qiv16si2 */
    }
  goto ret0;

 L59529: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L38507;
    }
  goto ret0;

 L38507: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14300 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3629;  /* avx512f_sign_extendv16hiv16si2 */
    }
  goto ret0;

 L38381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L59530;
    case V16HImode:
      goto L59531;
    default:
      break;
    }
  goto ret0;

 L59530: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L38382;
    }
  goto ret0;

 L38382: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14259 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3619;  /* *avx512f_zero_extendv16qiv16si2 */
    }
  goto ret0;

 L59531: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L38520;
    }
  goto ret0;

 L38520: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14300 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3631;  /* avx512f_zero_extendv16hiv16si2 */
    }
  goto ret0;

 L40044: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L40045;
    }
  goto ret0;

 L40045: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L40046;
    }
  goto ret0;

 L40046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L40047;
    }
  goto ret0;

 L40047: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 192 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3779;  /* xop_pcmov_v16si512 */
    }
  goto ret0;

 L41028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L59532;
    case V16SImode:
      goto L59533;
    case V4SImode:
      goto L59534;
    case V2SImode:
      goto L59536;
    case V8SImode:
      goto L59537;
    default:
      break;
    }
  goto ret0;

 L59532: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L41029;
    case ZERO_EXTEND:
      goto L42432;
    case REG:
    case SUBREG:
    case MEM:
      goto L59535;
    default:
      goto ret0;
   }
 L59535: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L41939;
    }
  goto ret0;

 L41029: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L41030;
    }
  goto ret0;

 L41030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41031;
  goto ret0;

 L41031: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59539;
  goto ret0;

 L59539: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L59541;
  goto ret0;

 L59541: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3867;  /* avx2_pbroadcastv16si */
    }
 L59542: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3925;  /* avx512f_vec_dupv16si */
    }
  goto ret0;

 L42432: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L42433;
    }
  goto ret0;

 L42433: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD))
    {
      return 4057;  /* avx512cd_maskw_vec_dupv16si */
    }
  goto ret0;

 L41939: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3981;  /* *avx512f_vec_dup_gprv16si */
    }
  goto ret0;

 L59533: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41457;
  goto ret0;

 L41457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L41458;
    }
  goto ret0;

 L41458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41459;
  goto ret0;

 L41459: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3921;  /* avx512f_vec_dupv16si_1 */
    }
  goto ret0;

 L59534: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L41822;
    }
  goto ret0;

 L41822: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16669 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3963;  /* *avx512f_broadcastv16si */
    }
  goto ret0;

 L59536: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L42210;
  goto ret0;

 L42210: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L42211;
    }
  goto ret0;

 L42211: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L42212;
  goto ret0;

 L42212: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42213;
  goto ret0;

 L42213: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4028;  /* *avx512dq_broadcastv16si */
    }
  goto ret0;

 L59537: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L42349;
    }
  goto ret0;

 L42349: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16904 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4044;  /* *avx512dq_broadcastv16si_1 */
    }
  goto ret0;

 L51256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L51257;
    }
  goto ret0;

 L51257: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD))
    {
      return 4649;  /* clzv16si2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_54 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11564;
    case UNSPEC:
      goto L59578;
    case FIX:
      goto L20460;
    case VEC_CONCAT:
      goto L21111;
    case UNSIGNED_FIX:
      goto L21254;
    default:
     break;
   }
  goto ret0;

 L11564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59583;
 L22026: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L22027;
    }
  goto ret0;

 L59583: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59588;
    case FIX:
      goto L20466;
    case UNSIGNED_FIX:
      goto L21268;
    case REG:
    case SUBREG:
    case MEM:
      goto L59581;
    default:
      goto L59582;
   }
 L59581: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L11565;
    }
 L59582: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L11691;
    }
  goto L22026;

 L59588: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L59591;
  goto L22026;

 L59591: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12209;
    case 41LL:
      goto L20118;
    case 150LL:
      goto L20216;
    default:
      break;
    }
  goto L22026;

 L12209: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L12210;
    }
  goto L22026;

 L12210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L12211;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L12211: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12212;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L12212: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 298 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1113;  /* *avx_loaddquv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L20118: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L59594;
    case V8DFmode:
      goto L59595;
    default:
      break;
    }
  goto L22026;

 L59594: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20119;
    }
  goto L22026;

 L20119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L20120;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L20120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20121;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L20121: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4054 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1952;  /* avx_fix_notruncv8sfv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L59595: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21081;
    }
  goto L22026;

 L21081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L21082;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21083;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21083: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2072;  /* avx512f_cvtpd2dq512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L20216: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L59596;
    case V8DFmode:
      goto L59597;
    default:
      break;
    }
  goto L22026;

 L59596: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20217;
    }
  goto L22026;

 L20217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L20218;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L20218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20219;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L20219: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1965;  /* avx512vl_ufix_notruncv8sfv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L59597: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21153;
    }
  goto L22026;

 L21153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L21154;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21155;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21155: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2081;  /* ufix_notruncv8dfv8si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L20466: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L59598;
    case V8DFmode:
      goto L59599;
    default:
      break;
    }
  goto L22026;

 L59598: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20467;
    }
  goto L22026;

 L20467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L20468;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L20468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20469;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L20469: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4146 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 1996;  /* fix_truncv8sfv8si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L59599: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21237;
    }
  goto L22026;

 L21237: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L21238;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21238: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21239;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21239: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2091;  /* fix_truncv8dfv8si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L21268: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L59600;
    case V8SFmode:
      goto L59601;
    default:
      break;
    }
  goto L22026;

 L59600: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21269;
    }
  goto L22026;

 L21269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L21270;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21271;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21271: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2095;  /* ufix_truncv8dfv8si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L59601: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21701;
    }
  goto L22026;

 L21701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L21702;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21702: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21703;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L21703: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2152;  /* ufix_truncv8sfv8si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L11565: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L11566;
    }
  x2 = XEXP (x1, 0);
  goto L59582;

 L11566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11567;
    }
  x2 = XEXP (x1, 0);
  goto L59582;

 L11567: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1019;  /* avx512vl_loadv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59582;

 L11691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L11692;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L11692: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11693;
    }
  x2 = XEXP (x1, 0);
  goto L22026;

 L11693: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1037;  /* avx512vl_blendmv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22026;

 L22027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L22028;
    }
  goto ret0;

 L22028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L22029;
    }
  goto ret0;

 L22029: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2196;  /* *avx512vl_cvtmask2dv8si */
    }
  goto ret0;

 L59578: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L59602;
  goto ret0;

 L59602: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12203;
    case 41LL:
      goto L20112;
    case 150LL:
      goto L20202;
    default:
      break;
    }
  goto ret0;

 L12203: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L12204;
    }
  goto ret0;

 L12204: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 298 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1112;  /* *avx_loaddquv8si */
    }
  goto ret0;

 L20112: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L59605;
    case V8DFmode:
      goto L59606;
    default:
      break;
    }
  goto ret0;

 L59605: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L20113;
    }
  goto ret0;

 L20113: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4054 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1) && 
#line 324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1951;  /* avx_fix_notruncv8sfv8si */
    }
  goto ret0;

 L59606: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21067;
    }
  goto ret0;

 L21067: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4612 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2070;  /* *avx512f_cvtpd2dq512 */
    }
  goto ret0;

 L20202: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L59607;
    case V8DFmode:
      goto L59608;
    default:
      break;
    }
  goto ret0;

 L59607: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L20203;
    }
  goto ret0;

 L20203: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1963;  /* *avx512vl_ufix_notruncv8sfv8si */
    }
  goto ret0;

 L59608: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21139;
    }
  goto ret0;

 L21139: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2079;  /* ufix_notruncv8dfv8si2 */
    }
  goto ret0;

 L20460: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L59609;
    case V8DFmode:
      goto L59610;
    default:
      break;
    }
  goto ret0;

 L59609: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L20461;
    }
  goto ret0;

 L20461: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4146 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 1995;  /* fix_truncv8sfv8si2 */
    }
  goto ret0;

 L59610: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21223;
    }
  goto ret0;

 L21223: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4704 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2089;  /* fix_truncv8dfv8si2 */
    }
  goto ret0;

 L21111: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 41)
    goto L21112;
  goto ret0;

 L21112: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21113;
    }
  goto ret0;

 L21113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21114;
    }
  goto ret0;

 L21114: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4643 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 2076;  /* *avx_cvtpd2dq256_2 */
    }
  goto ret0;

 L21254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DFmode:
      goto L59611;
    case V8SFmode:
      goto L59612;
    default:
      break;
    }
  goto ret0;

 L59611: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21255;
    }
  goto ret0;

 L21255: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4704 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2093;  /* ufix_truncv8dfv8si2 */
    }
  goto ret0;

 L59612: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L21695;
    }
  goto ret0;

 L21695: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2151;  /* ufix_truncv8sfv8si2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_55 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L23108;
    case UNSPEC:
      goto L59712;
    case PLUS:
      goto L28434;
    case MINUS:
      goto L28449;
    case MULT:
      goto L29812;
    case ASHIFTRT:
      goto L29896;
    case ASHIFT:
      goto L30091;
    case LSHIFTRT:
      goto L30106;
    case ROTATE:
      goto L30337;
    case ROTATERT:
      goto L30352;
    case SMAX:
      goto L30799;
    case SMIN:
      goto L30814;
    case UMAX:
      goto L30829;
    case UMIN:
      goto L30844;
    case AND:
      goto L32172;
    case IOR:
      goto L32734;
    case XOR:
      goto L32749;
    case ABS:
      goto L37882;
    case SIGN_EXTEND:
      goto L38409;
    case ZERO_EXTEND:
      goto L38441;
    case VEC_DUPLICATE:
      goto L41510;
    case VEC_CONCAT:
      goto L43826;
    case CLZ:
      goto L51275;
    case REG:
    case SUBREG:
    case MEM:
      goto L59701;
    default:
      goto ret0;
   }
 L59701: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L38234;
    }
  goto ret0;

 L23108: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L59721;
    case V8SImode:
      goto L59722;
    default:
      break;
    }
  goto ret0;

 L59721: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L34304;
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L23109;
    }
  goto ret0;

 L34304: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L34305;
    }
  goto ret0;

 L34305: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L34306;
    }
  goto ret0;

 L34306: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L34307;
  goto ret0;

 L34307: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59723;
  goto ret0;

 L59723: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 2LL:
        goto L34308;
      case 0LL:
        goto L34418;
      default:
        break;
      }
 L59725: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35001;
    }
  goto ret0;

 L34308: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34309;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34309: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34310;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34310: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34311;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34311: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34312;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34312: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34313;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34313: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34314;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34314: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34315;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L34316;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34316: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34317;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34317: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3362;  /* avx2_interleave_highv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34418: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34419;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34419: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34420;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34420: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34421;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34421: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34422;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34422: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34423;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34423: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34424;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34424: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34425;
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L34426;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34426: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34427;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L34427: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11517 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3368;  /* avx2_interleave_lowv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L59725;

 L35001: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35002;
    }
  goto ret0;

 L35002: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35003;
    }
  goto ret0;

 L35003: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35004;
    }
  goto ret0;

 L35004: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35005;
    }
  goto ret0;

 L35005: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35006;
    }
  goto ret0;

 L35006: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35007;
    }
  goto ret0;

 L35007: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L35008;
    }
  goto ret0;

 L35008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[11] = x2;
      goto L35009;
    }
  goto ret0;

 L35009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[12] = x2;
      goto L35010;
    }
  goto ret0;

 L35010: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11941 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3)))))
    {
      return 3410;  /* avx512vl_shuf_i32x4_1_mask */
    }
  goto ret0;

 L23109: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23110;
  goto ret0;

 L23110: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23111;
  goto ret0;

 L23111: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23112;
  goto ret0;

 L23112: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23113;
  goto ret0;

 L23113: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23114;
  goto ret0;

 L23114: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23115;
  goto ret0;

 L23115: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23116;
  goto ret0;

 L23116: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23117;
  goto ret0;

 L23117: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L23118;
  goto ret0;

 L23118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L23119;
    }
  goto ret0;

 L23119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23120;
    }
  goto ret0;

 L23120: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6871 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && TARGET_AVX512DQ)))
    {
      return 2283;  /* vec_extract_hi_v16si_mask */
    }
  goto ret0;

 L59722: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L35214;
    }
  goto ret0;

 L35214: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L35215;
  goto ret0;

 L35215: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35216;
    }
  goto ret0;

 L35216: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35217;
    }
  goto ret0;

 L35217: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35218;
    }
  goto ret0;

 L35218: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35219;
    }
  goto ret0;

 L35219: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35220;
    }
  goto ret0;

 L35220: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35221;
    }
  goto ret0;

 L35221: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35222;
    }
  goto ret0;

 L35222: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35223;
    }
  goto ret0;

 L35223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[10] = x2;
      goto L35224;
    }
  goto ret0;

 L35224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[11] = x2;
      goto L35225;
    }
  goto ret0;

 L35225: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12174 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && TARGET_AVX512VL
   && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 4 == INTVAL (operands[9]))))
    {
      return 3420;  /* avx2_pshufd_1_mask */
    }
  goto ret0;

 L59712: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L59726;
    case 3:
      goto L59727;
    case 2:
      goto L59728;
    case 1:
      goto L59733;
    default:
      break;
    }
  goto ret0;

 L59726: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 159)
    goto L24028;
  goto ret0;

 L24028: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L24029;
    }
  goto ret0;

 L24029: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L24030;
    }
  goto ret0;

 L24030: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L24031;
    }
  goto ret0;

 L24031: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24032;
    }
  goto ret0;

 L24032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SImode))
    {
      operands[5] = x2;
      goto L24033;
    }
 L24130: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24131;
  goto ret0;

 L24033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24034;
    }
  x2 = XEXP (x1, 1);
  goto L24130;

 L24034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2359;  /* avx512vl_vternlogv8si_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24130;

 L24131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24132;
    }
  goto ret0;

 L24132: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7713 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2369;  /* avx512vl_vternlogv8si_mask */
    }
  goto ret0;

 L59727: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 162LL:
      goto L24437;
    case 147LL:
      goto L42738;
    case 149LL:
      goto L43009;
    case 148LL:
      goto L43224;
    default:
      break;
    }
  goto ret0;

 L24437: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L24438;
    }
  goto ret0;

 L24438: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L24439;
    }
  goto ret0;

 L24439: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L24440;
    }
  goto ret0;

 L24440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[4] = x2;
      goto L24441;
    }
  goto ret0;

 L24441: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24442;
    }
  goto ret0;

 L24442: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2405;  /* avx512vl_alignv8si_mask */
    }
  goto ret0;

 L42738: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L42739;
    }
  goto ret0;

 L42739: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L42740;
    }
  goto ret0;

 L42740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L42741;
    }
  goto ret0;

 L42741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SImode))
    {
      operands[4] = x2;
      goto L42742;
    }
  goto ret0;

 L42742: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42743;
    }
  goto ret0;

 L42743: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4096;  /* avx512vl_vpermi2varv8si3_maskz_1 */
    }
  goto ret0;

 L43009: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L43010;
    }
  goto ret0;

 L43010: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L43011;
    }
  goto ret0;

 L43011: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L43012;
    }
  goto ret0;

 L43012: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43013;
  goto ret0;

 L43013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43014;
    }
  goto ret0;

 L43014: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4127;  /* avx512vl_vpermi2varv8si3_mask */
    }
  goto ret0;

 L43224: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L43225;
    }
  goto ret0;

 L43225: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L43226;
    }
  goto ret0;

 L43226: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L43227;
    }
  goto ret0;

 L43227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SImode))
    {
      operands[4] = x2;
      goto L43228;
    }
 L43498: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43499;
  goto ret0;

 L43228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43229;
    }
  x2 = XEXP (x1, 1);
  goto L43498;

 L43229: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4150;  /* avx512vl_vpermt2varv8si3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43498;

 L43499: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43500;
    }
  goto ret0;

 L43500: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4181;  /* avx512vl_vpermt2varv8si3_mask */
    }
  goto ret0;

 L59728: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 184LL:
      goto L29632;
    case 143LL:
      goto L41147;
    default:
      break;
    }
  goto ret0;

 L29632: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L29633;
    }
  goto ret0;

 L29633: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L29634;
    }
  goto ret0;

 L29634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L29635;
    }
  goto ret0;

 L29635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29636;
    }
  goto ret0;

 L29636: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9586 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2842;  /* avx512bw_pmaddwd512v16hi_mask */
    }
  goto ret0;

 L41147: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L41148;
    }
  goto ret0;

 L41148: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L41149;
    }
  goto ret0;

 L41149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L41150;
    }
  goto ret0;

 L41150: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41151;
    }
  goto ret0;

 L41151: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 3884;  /* avx2_permvarv8si_mask */
    }
  goto ret0;

 L59733: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 163)
    goto L51353;
  goto ret0;

 L51353: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L51354;
    }
  goto ret0;

 L51354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L51355;
    }
  goto ret0;

 L51355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51356;
    }
  goto ret0;

 L51356: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4664;  /* conflictv8si_mask */
    }
  goto ret0;

 L28434: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L28435;
    }
  goto ret0;

 L28435: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L28436;
    }
  goto ret0;

 L28436: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L28437;
    }
  goto ret0;

 L28437: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28438;
    }
  goto ret0;

 L28438: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V8SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2718;  /* *addv8si3 */
    }
 L28600: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (PLUS, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2739;  /* *addv8si3_mask */
    }
  goto ret0;

 L28449: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L28450;
    }
  goto ret0;

 L28450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L28451;
    }
  goto ret0;

 L28451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L28452;
    }
  goto ret0;

 L28452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28453;
    }
  goto ret0;

 L28453: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V8SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2720;  /* *subv8si3 */
    }
 L28609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (MINUS, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2740;  /* *subv8si3_mask */
    }
  goto ret0;

 L29812: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L29813;
    }
  goto ret0;

 L29813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L29814;
    }
  goto ret0;

 L29814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L29815;
    }
  goto ret0;

 L29815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29816;
    }
  goto ret0;

 L29816: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V8SImode, operands) && (32 == 64 || TARGET_AVX512VL)) && 
#line 330 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2856;  /* *avx2_mulv8si3_mask */
    }
  goto ret0;

 L29896: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode)
    goto L59734;
  goto ret0;

 L59734: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L29897;
    }
 L59735: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L44132;
    }
  goto ret0;

 L29897: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29898;
    }
  x3 = XEXP (x2, 0);
  goto L59735;

 L29898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L29899;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59735;

 L29899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29900;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59735;

 L29900: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2868;  /* ashrv8si3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59735;

 L44132: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L44133;
    }
  goto ret0;

 L44133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L44134;
    }
  goto ret0;

 L44134: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44135;
    }
  goto ret0;

 L44135: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 4249;  /* avx2_ashrvv8si_mask */
    }
  goto ret0;

 L30091: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L44282;
    }
  goto ret0;

 L44282: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L44283;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30093;
    }
  goto ret0;

 L44283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L44284;
    }
  goto ret0;

 L44284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44285;
    }
  goto ret0;

 L44285: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 4269;  /* avx2_ashlvv8si_mask */
    }
  goto ret0;

 L30093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30094;
    }
  goto ret0;

 L30094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30095;
    }
  goto ret0;

 L30095: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2894;  /* ashlv8si3_mask */
    }
  goto ret0;

 L30106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L44297;
    }
  goto ret0;

 L44297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L44298;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30108;
    }
  goto ret0;

 L44298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L44299;
    }
  goto ret0;

 L44299: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44300;
    }
  goto ret0;

 L44300: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 4271;  /* avx2_lshrvv8si_mask */
    }
  goto ret0;

 L30108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30109;
    }
  goto ret0;

 L30109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30110;
    }
  goto ret0;

 L30110: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2896;  /* lshrv8si3_mask */
    }
  goto ret0;

 L30337: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode)
    goto L59736;
  goto ret0;

 L59736: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30338;
    }
 L59737: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30518;
    }
  goto ret0;

 L30338: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L30339;
    }
  x3 = XEXP (x2, 0);
  goto L59737;

 L30339: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30340;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59737;

 L30340: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30341;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59737;

 L30341: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2928;  /* avx512vl_rolvv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59737;

 L30518: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30519;
    }
  goto ret0;

 L30519: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30520;
    }
  goto ret0;

 L30520: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30521;
    }
  goto ret0;

 L30521: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2952;  /* avx512vl_rolv8si_mask */
    }
  goto ret0;

 L30352: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode)
    goto L59738;
  goto ret0;

 L59738: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30353;
    }
 L59739: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30533;
    }
  goto ret0;

 L30353: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L30354;
    }
  x3 = XEXP (x2, 0);
  goto L59739;

 L30354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30355;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59739;

 L30355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30356;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59739;

 L30356: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2930;  /* avx512vl_rorvv8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L59739;

 L30533: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30534;
    }
  goto ret0;

 L30534: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30535;
    }
  goto ret0;

 L30535: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30536;
    }
  goto ret0;

 L30536: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2954;  /* avx512vl_rorv8si_mask */
    }
  goto ret0;

 L30799: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30800;
    }
  goto ret0;

 L30800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L30801;
    }
  goto ret0;

 L30801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30802;
    }
  goto ret0;

 L30802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30803;
    }
  goto ret0;

 L30803: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2992;  /* *avx512bw_smaxv8si3_mask */
    }
  goto ret0;

 L30814: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30815;
    }
  goto ret0;

 L30815: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L30816;
    }
  goto ret0;

 L30816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30817;
    }
  goto ret0;

 L30817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30818;
    }
  goto ret0;

 L30818: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2994;  /* *avx512bw_sminv8si3_mask */
    }
  goto ret0;

 L30829: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30830;
    }
  goto ret0;

 L30830: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L30831;
    }
  goto ret0;

 L30831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30832;
    }
  goto ret0;

 L30832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30833;
    }
  goto ret0;

 L30833: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2996;  /* *avx512bw_umaxv8si3_mask */
    }
  goto ret0;

 L30844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L30845;
    }
  goto ret0;

 L30845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L30846;
    }
  goto ret0;

 L30846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L30847;
    }
  goto ret0;

 L30847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30848;
    }
  goto ret0;

 L30848: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2998;  /* *avx512bw_uminv8si3_mask */
    }
  goto ret0;

 L32172: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode)
    goto L59740;
  goto ret0;

 L59740: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32173;
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L32720;
    }
  goto ret0;

 L32173: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L32174;
    }
  goto ret0;

 L32174: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L32175;
    }
  goto ret0;

 L32175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L32176;
    }
  goto ret0;

 L32176: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32177;
    }
  goto ret0;

 L32177: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3180;  /* *andnotv8si3 */
    }
 L32248: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10881 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3188;  /* *andnotv8si3_mask */
    }
  goto ret0;

 L32720: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L32721;
    }
  goto ret0;

 L32721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L32722;
    }
  goto ret0;

 L32722: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32723;
    }
  goto ret0;

 L32723: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V8SImode, operands)) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3248;  /* andv8si3_mask */
    }
  goto ret0;

 L32734: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L32735;
    }
  goto ret0;

 L32735: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L32736;
    }
  goto ret0;

 L32736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L32737;
    }
  goto ret0;

 L32737: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32738;
    }
  goto ret0;

 L32738: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V8SImode, operands)) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3250;  /* iorv8si3_mask */
    }
  goto ret0;

 L32749: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L32750;
    }
  goto ret0;

 L32750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L32751;
    }
  goto ret0;

 L32751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L32752;
    }
  goto ret0;

 L32752: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32753;
    }
  goto ret0;

 L32753: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V8SImode, operands)) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3252;  /* xorv8si3_mask */
    }
  goto ret0;

 L37882: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L37883;
    }
  goto ret0;

 L37883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L37884;
    }
  goto ret0;

 L37884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L37885;
    }
  goto ret0;

 L37885: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3553;  /* absv8si2_mask */
    }
  goto ret0;

 L38409: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8QImode:
      goto L59742;
    case V8HImode:
      goto L59743;
    default:
      break;
    }
  goto ret0;

 L59742: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38410;
  goto ret0;

 L38410: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38411;
    }
  goto ret0;

 L38411: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L38412;
  goto ret0;

 L38412: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38413;
  goto ret0;

 L38413: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38414;
  goto ret0;

 L38414: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38415;
  goto ret0;

 L38415: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38416;
  goto ret0;

 L38416: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38417;
  goto ret0;

 L38417: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38418;
  goto ret0;

 L38418: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38419;
  goto ret0;

 L38419: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L38420;
  goto ret0;

 L38420: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L38421;
    }
  goto ret0;

 L38421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38422;
    }
  goto ret0;

 L38422: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14274 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3622;  /* avx2_sign_extendv8qiv8si2_mask */
    }
  goto ret0;

 L59743: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38539;
    }
  goto ret0;

 L38539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L38540;
    }
  goto ret0;

 L38540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38541;
    }
  goto ret0;

 L38541: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3634;  /* avx2_sign_extendv8hiv8si2_mask */
    }
  goto ret0;

 L38441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8QImode:
      goto L59744;
    case V8HImode:
      goto L59745;
    default:
      break;
    }
  goto ret0;

 L59744: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38442;
  goto ret0;

 L38442: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38443;
    }
  goto ret0;

 L38443: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L38444;
  goto ret0;

 L38444: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38445;
  goto ret0;

 L38445: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38446;
  goto ret0;

 L38446: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38447;
  goto ret0;

 L38447: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38448;
  goto ret0;

 L38448: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38449;
  goto ret0;

 L38449: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38450;
  goto ret0;

 L38450: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38451;
  goto ret0;

 L38451: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L38452;
  goto ret0;

 L38452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L38453;
    }
  goto ret0;

 L38453: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38454;
    }
  goto ret0;

 L38454: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14274 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3624;  /* avx2_zero_extendv8qiv8si2_mask */
    }
  goto ret0;

 L59745: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38552;
    }
  goto ret0;

 L38552: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L38553;
    }
  goto ret0;

 L38553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38554;
    }
  goto ret0;

 L38554: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3636;  /* avx2_zero_extendv8hiv8si2_mask */
    }
  goto ret0;

 L41510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59746;
    case V2SImode:
      goto L59748;
    case V4SImode:
      goto L59749;
    default:
      break;
    }
  goto ret0;

 L59746: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41511;
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L41958;
    }
  goto ret0;

 L41511: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L41512;
    }
  goto ret0;

 L41512: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41513;
  goto ret0;

 L41513: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41514;
  goto ret0;

 L41514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L41515;
    }
  goto ret0;

 L41515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41516;
    }
  goto ret0;

 L41516: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3928;  /* avx512vl_vec_dupv8si_mask */
    }
  goto ret0;

 L41958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L41959;
    }
  goto ret0;

 L41959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41960;
    }
  goto ret0;

 L41960: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3984;  /* avx512vl_vec_dup_gprv8si_mask */
    }
  goto ret0;

 L59748: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L42239;
  goto ret0;

 L42239: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L42240;
    }
  goto ret0;

 L42240: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L42241;
  goto ret0;

 L42241: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42242;
  goto ret0;

 L42242: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L42243;
  goto ret0;

 L42243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L42244;
    }
  goto ret0;

 L42244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42245;
    }
  goto ret0;

 L42245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16864 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4031;  /* avx512dq_broadcastv8si_mask */
    }
  goto ret0;

 L59749: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L42316;
    }
  goto ret0;

 L42316: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L42317;
    }
  goto ret0;

 L42317: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42318;
    }
  goto ret0;

 L42318: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16891 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4039;  /* avx512vl_broadcastv8si_mask_1 */
    }
  goto ret0;

 L43826: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L59751;
  goto ret0;

 L59751: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L43880;
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L43827;
    }
  goto ret0;

 L43880: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L43881;
    }
  goto ret0;

 L43881: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L43882;
  goto ret0;

 L43882: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43883;
  goto ret0;

 L43883: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43884;
  goto ret0;

 L43884: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43885;
  goto ret0;

 L43885: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43886;
  goto ret0;

 L43886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L43887;
    }
  goto ret0;

 L43887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L43888;
    }
  goto ret0;

 L43888: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43889;
    }
  goto ret0;

 L43889: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4220;  /* vec_set_hi_v8si_mask */
    }
  goto ret0;

 L43827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L43828;
  goto ret0;

 L43828: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L43829;
    }
  goto ret0;

 L43829: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L43830;
  goto ret0;

 L43830: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L43831;
  goto ret0;

 L43831: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L43832;
  goto ret0;

 L43832: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L43833;
  goto ret0;

 L43833: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L43834;
  goto ret0;

 L43834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L43835;
    }
  goto ret0;

 L43835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43836;
    }
  goto ret0;

 L43836: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4216;  /* vec_set_lo_v8si_mask */
    }
  goto ret0;

 L51275: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L51276;
    }
  goto ret0;

 L51276: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L51277;
    }
  goto ret0;

 L51277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51278;
    }
  goto ret0;

 L51278: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4652;  /* clzv8si2_mask */
    }
  goto ret0;

 L38234: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L38235;
    }
  goto ret0;

 L38235: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38236;
    }
  goto ret0;

 L38236: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14197 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3602;  /* avx2_pblenddv8si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_56 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 4:
      goto L59752;
    case 3:
      goto L59753;
    case 2:
      goto L59754;
    case 1:
      goto L59765;
    default:
      break;
    }
  goto ret0;

 L59752: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 159LL:
      goto L24019;
    case 145LL:
      goto L45087;
    default:
      break;
    }
  goto ret0;

 L24019: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L24020;
    }
  goto ret0;

 L24020: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L24021;
    }
  goto ret0;

 L24021: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L24022;
    }
  goto ret0;

 L24022: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24023;
    }
  goto ret0;

 L24023: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2358;  /* avx512vl_vternlogv8si */
    }
  goto ret0;

 L45087: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L59766;
    case V4SImode:
      goto L59767;
    default:
      break;
    }
 L45551: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L45552;
  goto ret0;

 L59766: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L45088;
    }
  goto L45551;

 L45088: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[7] = x2;
      goto L45089;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45089: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59768;
    case DImode:
      goto L59769;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L59768: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45090;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45090: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L45091;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45091: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[4] = x4;
      goto L45092;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45092: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45093;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45093: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45094;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45094: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45095;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45095: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SImode))
    {
      operands[5] = x2;
      goto L45096;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4341;  /* *avx2_gathersiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L59769: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45119;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45119: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L45120;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45120: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[4] = x4;
      goto L45121;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45121: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45122;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45122: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45123;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45124;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45124: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SImode))
    {
      operands[5] = x2;
      goto L45125;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45125: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4342;  /* *avx2_gathersiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L59767: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L46016;
    }
  goto L45551;

 L46016: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[7] = x2;
      goto L46017;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46017: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59770;
    case DImode:
      goto L59771;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L59770: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46018;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46018: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L46019;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46019: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L46020;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46020: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L46021;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46021: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46022;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46022: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46023;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46023: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L46024;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46024: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4373;  /* *avx2_gatherdiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L59771: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46047;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46047: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L46048;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46048: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L46049;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46049: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L46050;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46050: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46051;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46051: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46052;
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46052: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L46053;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L46053: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4374;  /* *avx2_gatherdiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45551;

 L45552: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L45553;
    }
  goto ret0;

 L45553: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59772;
    case DImode:
      goto L59773;
    default:
      break;
    }
  goto ret0;

 L59772: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45554;
  goto ret0;

 L45554: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45555;
    }
  goto ret0;

 L45555: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L59774;
    case V4DImode:
      goto L59775;
    default:
      break;
    }
  goto ret0;

 L59774: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L45556;
    }
  goto ret0;

 L45556: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45557;
    }
  goto ret0;

 L45557: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45558;
  goto ret0;

 L45558: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45559;
  goto ret0;

 L45559: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SImode))
    {
      operands[4] = x2;
      goto L45560;
    }
  goto ret0;

 L45560: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4357;  /* *avx2_gathersiv8si_2 */
    }
  goto ret0;

 L59775: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46484;
    }
  goto ret0;

 L46484: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46485;
    }
  goto ret0;

 L46485: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46486;
  goto ret0;

 L46486: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46487;
  goto ret0;

 L46487: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L46488;
    }
  goto ret0;

 L46488: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4389;  /* *avx2_gatherdiv8si_2 */
    }
  goto ret0;

 L59773: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45583;
  goto ret0;

 L45583: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45584;
    }
  goto ret0;

 L45584: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L59776;
    case V4DImode:
      goto L59777;
    default:
      break;
    }
  goto ret0;

 L59776: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L45585;
    }
  goto ret0;

 L45585: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45586;
    }
  goto ret0;

 L45586: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45587;
  goto ret0;

 L45587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45588;
  goto ret0;

 L45588: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SImode))
    {
      operands[4] = x2;
      goto L45589;
    }
  goto ret0;

 L45589: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4358;  /* *avx2_gathersiv8si_2 */
    }
  goto ret0;

 L59777: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46513;
    }
  goto ret0;

 L46513: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46514;
    }
  goto ret0;

 L46514: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46515;
  goto ret0;

 L46515: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46516;
  goto ret0;

 L46516: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L46517;
    }
  goto ret0;

 L46517: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4390;  /* *avx2_gatherdiv8si_2 */
    }
  goto ret0;

 L59753: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 162LL:
      goto L24429;
    case 147LL:
      goto L42730;
    case 148LL:
      goto L43216;
    case 138LL:
      goto L43634;
    case 145LL:
      goto L47113;
    case 164LL:
      goto L50431;
    case 166LL:
      goto L50599;
    default:
      break;
    }
  goto ret0;

 L24429: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L24430;
    }
  goto ret0;

 L24430: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L24431;
    }
  goto ret0;

 L24431: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24432;
    }
  goto ret0;

 L24432: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2404;  /* *avx512vl_alignv8si */
    }
  goto ret0;

 L42730: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L42731;
    }
  goto ret0;

 L42731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L42732;
    }
  goto ret0;

 L42732: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L42733;
    }
  goto ret0;

 L42733: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4095;  /* avx512vl_vpermi2varv8si3 */
    }
  goto ret0;

 L43216: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L43217;
    }
  goto ret0;

 L43217: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L43218;
    }
  goto ret0;

 L43218: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L43219;
    }
  goto ret0;

 L43219: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4149;  /* avx512vl_vpermt2varv8si3 */
    }
  goto ret0;

 L43634: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L43635;
    }
  goto ret0;

 L43635: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L43636;
    }
  goto ret0;

 L43636: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L43637;
    }
  goto ret0;

 L43637: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4195;  /* *avx_vperm2f128v8si_full */
    }
  goto ret0;

 L47113: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L59778;
    case V4SImode:
      goto L59779;
    default:
      break;
    }
 L47713: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L47714;
  goto ret0;

 L59778: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L47114;
    }
  goto L47713;

 L47114: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47115;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47115: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L47116;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47116: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59780;
    case DImode:
      goto L59781;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L59780: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47117;
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47117: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47118;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47118: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47119;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47119: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47120;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47120: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4409;  /* *avx512f_gathersiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L59781: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47142;
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47142: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47143;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47143: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47144;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47144: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47145;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47145: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4410;  /* *avx512f_gathersiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L59779: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L48314;
    }
  goto L47713;

 L48314: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L48315;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48315: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L48316;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48316: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59782;
    case DImode:
      goto L59783;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L59782: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48317;
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48317: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48318;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48318: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48319;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48319: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48320;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48320: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4457;  /* *avx512f_gatherdiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L59783: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48342;
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48342: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L48343;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48344;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48345;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L48345: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4458;  /* *avx512f_gatherdiv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47713;

 L47714: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47715;
    }
  goto ret0;

 L47715: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[5] = x2;
      goto L47716;
    }
  goto ret0;

 L47716: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L59784;
    case DImode:
      goto L59785;
    default:
      break;
    }
  goto ret0;

 L59784: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47717;
  goto ret0;

 L47717: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47718;
    }
  goto ret0;

 L47718: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L59786;
    case V4DImode:
      goto L59787;
    default:
      break;
    }
  goto ret0;

 L59786: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47719;
    }
  goto ret0;

 L47719: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47720;
    }
  goto ret0;

 L47720: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4433;  /* *avx512f_gathersiv8si_2 */
    }
  goto ret0;

 L59787: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L48919;
    }
  goto ret0;

 L48919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48920;
    }
  goto ret0;

 L48920: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4481;  /* *avx512f_gatherdiv8si_2 */
    }
  goto ret0;

 L59785: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47742;
  goto ret0;

 L47742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47743;
    }
  goto ret0;

 L47743: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L59788;
    case V4DImode:
      goto L59789;
    default:
      break;
    }
  goto ret0;

 L59788: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47744;
    }
  goto ret0;

 L47744: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47745;
    }
  goto ret0;

 L47745: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4434;  /* *avx512f_gathersiv8si_2 */
    }
  goto ret0;

 L59789: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L48944;
    }
  goto ret0;

 L48944: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48945;
    }
  goto ret0;

 L48945: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4482;  /* *avx512f_gatherdiv8si_2 */
    }
  goto ret0;

 L50431: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L50432;
    }
  goto ret0;

 L50432: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L50433;
    }
  goto ret0;

 L50433: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50434;
    }
  goto ret0;

 L50434: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4549;  /* avx512vl_compressv8si_mask */
    }
  goto ret0;

 L50599: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L50600;
    }
  goto ret0;

 L50600: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L50601;
    }
  goto ret0;

 L50601: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50602;
    }
  goto ret0;

 L50602: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4573;  /* avx512vl_expandv8si_mask */
    }
  goto ret0;

 L59754: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 184LL:
      goto L29625;
    case 108LL:
      goto L37725;
    case 143LL:
      goto L41140;
    case 42LL:
      goto L44034;
    default:
      break;
    }
  goto ret0;

 L29625: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L29626;
    }
  goto ret0;

 L29626: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L29627;
    }
  goto ret0;

 L29627: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9586 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && 1) && 
#line 318 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2841;  /* avx512bw_pmaddwd512v16hi */
    }
  goto ret0;

 L37725: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L37726;
    }
  goto ret0;

 L37726: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L37727;
    }
  goto ret0;

 L37727: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13755 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3528;  /* avx2_psignv8si3 */
    }
  goto ret0;

 L41140: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L41141;
    }
  goto ret0;

 L41141: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L41142;
    }
  goto ret0;

 L41142: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3883;  /* avx2_permvarv8si */
    }
  goto ret0;

 L44034: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44035;
    }
  goto ret0;

 L44035: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44036;
    }
  goto ret0;

 L44036: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4233;  /* avx2_maskloadd256 */
    }
  goto ret0;

 L59765: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 163)
    goto L51347;
  goto ret0;

 L51347: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L51348;
    }
  goto ret0;

 L51348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4663;  /* *conflictv8si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_57 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  switch (GET_CODE (x4))
    {
    case PLUS:
      goto L36941;
    case MINUS:
      goto L37022;
    default:
     break;
   }
  goto ret0;

 L36941: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36942;
  goto ret0;

 L36942: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8SImode))
    {
      operands[1] = x6;
      goto L36943;
    }
  goto ret0;

 L36943: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36944;
  goto ret0;

 L36944: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36945;
  goto ret0;

 L36945: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36946;
  goto ret0;

 L36946: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36947;
  goto ret0;

 L36947: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36948;
  goto ret0;

 L36948: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36949;
  goto ret0;

 L36949: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L36950;
  goto ret0;

 L36950: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36951;
  goto ret0;

 L36951: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36952;
  goto ret0;

 L36952: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36953;
  goto ret0;

 L36953: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36954;
  goto ret0;

 L36954: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36955;
  goto ret0;

 L36955: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36956;
  goto ret0;

 L36956: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36957;
  goto ret0;

 L36957: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36958;
  goto ret0;

 L36958: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36959;
  goto ret0;

 L36959: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L36960;
  goto ret0;

 L36960: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36961;
  goto ret0;

 L36961: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36962;
  goto ret0;

 L36962: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36963;
  goto ret0;

 L36963: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L36964;
  goto ret0;

 L36964: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36965;
  goto ret0;

 L36965: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36966;
  goto ret0;

 L36966: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36967;
  goto ret0;

 L36967: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L36968;
  goto ret0;

 L36968: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L36969;
  goto ret0;

 L36969: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36970;
  goto ret0;

 L36970: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36971;
  goto ret0;

 L36971: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36972;
  goto ret0;

 L36972: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L36973;
  goto ret0;

 L36973: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36974;
  goto ret0;

 L36974: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L36975;
  goto ret0;

 L36975: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36976;
  goto ret0;

 L36976: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L36977;
  goto ret0;

 L36977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L36978;
  goto ret0;

 L36978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36979;
  goto ret0;

 L36979: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L36980;
  goto ret0;

 L36980: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36981;
  goto ret0;

 L36981: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8SImode))
    {
      operands[2] = x6;
      goto L36982;
    }
  goto ret0;

 L36982: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36983;
  goto ret0;

 L36983: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L36984;
  goto ret0;

 L36984: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36985;
  goto ret0;

 L36985: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36986;
  goto ret0;

 L36986: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36987;
  goto ret0;

 L36987: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L36988;
  goto ret0;

 L36988: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L36989;
  goto ret0;

 L36989: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36990;
  goto ret0;

 L36990: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36991;
  goto ret0;

 L36991: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36992;
  goto ret0;

 L36992: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L36993;
  goto ret0;

 L36993: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L36994;
  goto ret0;

 L36994: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L36995;
  goto ret0;

 L36995: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L36996;
  goto ret0;

 L36996: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L36997;
  goto ret0;

 L36997: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36998;
  goto ret0;

 L36998: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L36999;
  goto ret0;

 L36999: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37000;
  goto ret0;

 L37000: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37001;
  goto ret0;

 L37001: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37002;
  goto ret0;

 L37002: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37003;
  goto ret0;

 L37003: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37004;
  goto ret0;

 L37004: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37005;
  goto ret0;

 L37005: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37006;
  goto ret0;

 L37006: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37007;
  goto ret0;

 L37007: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L37008;
  goto ret0;

 L37008: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37009;
  goto ret0;

 L37009: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37010;
  goto ret0;

 L37010: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37011;
  goto ret0;

 L37011: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37012;
  goto ret0;

 L37012: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37013;
  goto ret0;

 L37013: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37014;
  goto ret0;

 L37014: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37015;
  goto ret0;

 L37015: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13388 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3493;  /* avx2_phadddv8si3 */
    }
  goto ret0;

 L37022: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37023;
  goto ret0;

 L37023: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8SImode))
    {
      operands[1] = x6;
      goto L37024;
    }
  goto ret0;

 L37024: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37025;
  goto ret0;

 L37025: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37026;
  goto ret0;

 L37026: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37027;
  goto ret0;

 L37027: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37028;
  goto ret0;

 L37028: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37029;
  goto ret0;

 L37029: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37030;
  goto ret0;

 L37030: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37031;
  goto ret0;

 L37031: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37032;
  goto ret0;

 L37032: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37033;
  goto ret0;

 L37033: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37034;
  goto ret0;

 L37034: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37035;
  goto ret0;

 L37035: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37036;
  goto ret0;

 L37036: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37037;
  goto ret0;

 L37037: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37038;
  goto ret0;

 L37038: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37039;
  goto ret0;

 L37039: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L37040;
  goto ret0;

 L37040: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37041;
  goto ret0;

 L37041: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37042;
  goto ret0;

 L37042: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37043;
  goto ret0;

 L37043: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37044;
  goto ret0;

 L37044: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37045;
  goto ret0;

 L37045: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37046;
  goto ret0;

 L37046: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37047;
  goto ret0;

 L37047: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37048;
  goto ret0;

 L37048: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37049;
  goto ret0;

 L37049: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37050;
  goto ret0;

 L37050: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37051;
  goto ret0;

 L37051: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37052;
  goto ret0;

 L37052: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37053;
  goto ret0;

 L37053: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37054;
  goto ret0;

 L37054: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37055;
  goto ret0;

 L37055: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L37056;
  goto ret0;

 L37056: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37057;
  goto ret0;

 L37057: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L37058;
  goto ret0;

 L37058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L37059;
  goto ret0;

 L37059: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L37060;
  goto ret0;

 L37060: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37061;
  goto ret0;

 L37061: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37062;
  goto ret0;

 L37062: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8SImode))
    {
      operands[2] = x6;
      goto L37063;
    }
  goto ret0;

 L37063: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37064;
  goto ret0;

 L37064: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37065;
  goto ret0;

 L37065: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37066;
  goto ret0;

 L37066: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37067;
  goto ret0;

 L37067: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37068;
  goto ret0;

 L37068: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37069;
  goto ret0;

 L37069: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37070;
  goto ret0;

 L37070: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37071;
  goto ret0;

 L37071: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37072;
  goto ret0;

 L37072: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37073;
  goto ret0;

 L37073: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37074;
  goto ret0;

 L37074: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37075;
  goto ret0;

 L37075: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37076;
  goto ret0;

 L37076: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37077;
  goto ret0;

 L37077: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37078;
  goto ret0;

 L37078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L37079;
  goto ret0;

 L37079: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37080;
  goto ret0;

 L37080: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37081;
  goto ret0;

 L37081: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37082;
  goto ret0;

 L37082: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37083;
  goto ret0;

 L37083: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L37084;
  goto ret0;

 L37084: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37085;
  goto ret0;

 L37085: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37086;
  goto ret0;

 L37086: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37087;
  goto ret0;

 L37087: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L37088;
  goto ret0;

 L37088: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L37089;
  goto ret0;

 L37089: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37090;
  goto ret0;

 L37090: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37091;
  goto ret0;

 L37091: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37092;
  goto ret0;

 L37092: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L37093;
  goto ret0;

 L37093: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L37094;
  goto ret0;

 L37094: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L37095;
  goto ret0;

 L37095: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L37096;
  goto ret0;

 L37096: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 13388 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3494;  /* avx2_phsubdv8si3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_58 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L23107;
    case UNSPEC:
      goto L59667;
    case PLUS:
      goto L28427;
    case MINUS:
      goto L28442;
    case MULT:
      goto L29805;
    case ASHIFTRT:
      goto L29847;
    case ASHIFT:
      goto L30084;
    case LSHIFTRT:
      goto L30099;
    case ROTATE:
      goto L30330;
    case ROTATERT:
      goto L30345;
    case SMAX:
      goto L30708;
    case SMIN:
      goto L30714;
    case UMAX:
      goto L30720;
    case UMIN:
      goto L30726;
    case EQ:
      goto L31608;
    case GT:
      goto L31830;
    case AND:
      goto L32164;
    case IOR:
      goto L32727;
    case XOR:
      goto L32742;
    case VEC_SELECT:
      goto L34287;
    case VEC_CONCAT:
      goto L36938;
    case ABS:
      goto L37848;
    case SIGN_EXTEND:
      goto L38394;
    case ZERO_EXTEND:
      goto L38426;
    case IF_THEN_ELSE:
      goto L40051;
    case VEC_DUPLICATE:
      goto L41084;
    case CLZ:
      goto L51269;
    default:
     break;
   }
  goto ret0;

 L23107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59681;
  goto ret0;

 L59681: ATTRIBUTE_UNUSED_LABEL
  return recog_55 (x0, insn, pnum_clobbers);

 L59667: ATTRIBUTE_UNUSED_LABEL
  return recog_56 (x0, insn, pnum_clobbers);

 L28427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59791;
  goto ret0;

 L59791: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MULT)
    goto L29656;
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L28428;
    }
  goto ret0;

 L29656: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29657;
  goto ret0;

 L29657: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29658;
  goto ret0;

 L29658: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16HImode))
    {
      operands[1] = x5;
      goto L29659;
    }
  goto ret0;

 L29659: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29660;
  goto ret0;

 L29660: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29661;
  goto ret0;

 L29661: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29662;
  goto ret0;

 L29662: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29663;
  goto ret0;

 L29663: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29664;
  goto ret0;

 L29664: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29665;
  goto ret0;

 L29665: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29666;
  goto ret0;

 L29666: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29667;
  goto ret0;

 L29667: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29668;
  goto ret0;

 L29668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29669;
  goto ret0;

 L29669: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29670;
  goto ret0;

 L29670: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16HImode))
    {
      operands[2] = x5;
      goto L29671;
    }
  goto ret0;

 L29671: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29672;
  goto ret0;

 L29672: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29673;
  goto ret0;

 L29673: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29674;
  goto ret0;

 L29674: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29675;
  goto ret0;

 L29675: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29676;
  goto ret0;

 L29676: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29677;
  goto ret0;

 L29677: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29678;
  goto ret0;

 L29678: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29679;
  goto ret0;

 L29679: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29680;
  goto ret0;

 L29680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == MULT)
    goto L29681;
  goto ret0;

 L29681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29682;
  goto ret0;

 L29682: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29683;
  goto ret0;

 L29683: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L29684;
  goto ret0;

 L29684: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29685;
  goto ret0;

 L29685: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L29686;
  goto ret0;

 L29686: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L29687;
  goto ret0;

 L29687: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L29688;
  goto ret0;

 L29688: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L29689;
  goto ret0;

 L29689: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L29690;
  goto ret0;

 L29690: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L29691;
  goto ret0;

 L29691: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L29692;
  goto ret0;

 L29692: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L29693;
  goto ret0;

 L29693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29694;
  goto ret0;

 L29694: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29695;
  goto ret0;

 L29695: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L29696;
  goto ret0;

 L29696: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29697;
  goto ret0;

 L29697: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L29698;
  goto ret0;

 L29698: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L29699;
  goto ret0;

 L29699: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L29700;
  goto ret0;

 L29700: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L29701;
  goto ret0;

 L29701: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L29702;
  goto ret0;

 L29702: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L29703;
  goto ret0;

 L29703: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L29704;
  goto ret0;

 L29704: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 9657 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (MULT, V16HImode, operands)))
    {
      return 2845;  /* *avx2_pmaddwd */
    }
  goto ret0;

 L28428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L28429;
    }
  goto ret0;

 L28429: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V8SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2717;  /* *addv8si3 */
    }
  goto ret0;

 L28442: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L28443;
    }
  goto ret0;

 L28443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L28444;
    }
  goto ret0;

 L28444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V8SImode, operands)) && 
#line 286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2719;  /* *subv8si3 */
    }
  goto ret0;

 L29805: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L29806;
    }
  goto ret0;

 L29806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L29807;
    }
  goto ret0;

 L29807: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V8SImode, operands) && 1) && 
#line 330 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2855;  /* *avx2_mulv8si3 */
    }
  goto ret0;

 L29847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59792;
  goto ret0;

 L59792: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44125;
    }
 L59793: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L29890;
    }
  goto ret0;

 L44125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44126;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29849;
    }
  x2 = XEXP (x1, 0);
  goto L59793;

 L44126: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4248;  /* avx2_ashrvv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59793;

 L29849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9901 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2861;  /* ashrv8si3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59793;

 L29890: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29891;
    }
  goto ret0;

 L29891: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2867;  /* *ashrv8si3 */
    }
  goto ret0;

 L30084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44275;
    }
  goto ret0;

 L44275: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44276;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30086;
    }
  goto ret0;

 L44276: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4268;  /* avx2_ashlvv8si */
    }
  goto ret0;

 L30086: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1) && 
#line 392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2893;  /* ashlv8si3 */
    }
  goto ret0;

 L30099: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44290;
    }
  goto ret0;

 L44290: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44291;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30101;
    }
  goto ret0;

 L44291: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4270;  /* avx2_lshrvv8si */
    }
  goto ret0;

 L30101: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1) && 
#line 392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2895;  /* lshrv8si3 */
    }
  goto ret0;

 L30330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59794;
  goto ret0;

 L59794: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30331;
    }
 L59795: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30511;
    }
  goto ret0;

 L30331: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L30332;
    }
  x2 = XEXP (x1, 0);
  goto L59795;

 L30332: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2927;  /* avx512vl_rolvv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59795;

 L30511: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30512;
    }
  goto ret0;

 L30512: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2951;  /* avx512vl_rolv8si */
    }
  goto ret0;

 L30345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59796;
  goto ret0;

 L59796: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30346;
    }
 L59797: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30526;
    }
  goto ret0;

 L30346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L30347;
    }
  x2 = XEXP (x1, 0);
  goto L59797;

 L30347: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2929;  /* avx512vl_rorvv8si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59797;

 L30526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30527;
    }
  goto ret0;

 L30527: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2953;  /* avx512vl_rorv8si */
    }
  goto ret0;

 L30708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30709;
    }
  goto ret0;

 L30709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L30710;
    }
  goto ret0;

 L30710: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (SMAX, V8SImode, operands)))
    {
      return 2979;  /* *avx2_smaxv8si3 */
    }
 L30794: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2991;  /* *avx512bw_smaxv8si3 */
    }
  goto ret0;

 L30714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30715;
    }
  goto ret0;

 L30715: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L30716;
    }
  goto ret0;

 L30716: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (SMIN, V8SImode, operands)))
    {
      return 2980;  /* *avx2_sminv8si3 */
    }
 L30809: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2993;  /* *avx512bw_sminv8si3 */
    }
  goto ret0;

 L30720: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30721;
    }
  goto ret0;

 L30721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L30722;
    }
  goto ret0;

 L30722: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (UMAX, V8SImode, operands)))
    {
      return 2981;  /* *avx2_umaxv8si3 */
    }
 L30824: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2995;  /* *avx512bw_umaxv8si3 */
    }
  goto ret0;

 L30726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L30727;
    }
  goto ret0;

 L30727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L30728;
    }
  goto ret0;

 L30728: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10124 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (UMIN, V8SImode, operands)))
    {
      return 2982;  /* *avx2_uminv8si3 */
    }
 L30839: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2997;  /* *avx512bw_uminv8si3 */
    }
  goto ret0;

 L31608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L31609;
    }
  goto ret0;

 L31609: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L31610;
    }
  goto ret0;

 L31610: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10383 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (EQ, V8SImode, operands)))
    {
      return 3101;  /* *avx2_eqv8si3 */
    }
  goto ret0;

 L31830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L31831;
    }
  goto ret0;

 L31831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L31832;
    }
  goto ret0;

 L31832: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3134;  /* avx2_gtv8si3 */
    }
  goto ret0;

 L32164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59798;
  goto ret0;

 L59798: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32165;
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L32713;
    }
  goto ret0;

 L32165: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L32166;
    }
  goto ret0;

 L32166: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L32167;
    }
  goto ret0;

 L32167: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3179;  /* *andnotv8si3 */
    }
  goto ret0;

 L32713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L32714;
    }
  goto ret0;

 L32714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V8SImode, operands)) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3247;  /* *andv8si3 */
    }
  goto ret0;

 L32727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L32728;
    }
  goto ret0;

 L32728: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L32729;
    }
  goto ret0;

 L32729: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V8SImode, operands)) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3249;  /* *iorv8si3 */
    }
  goto ret0;

 L32742: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L32743;
    }
  goto ret0;

 L32743: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L32744;
    }
  goto ret0;

 L32744: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V8SImode, operands)) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3251;  /* *xorv8si3 */
    }
  goto ret0;

 L34287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L59800;
    case V8SImode:
      goto L59801;
    default:
      break;
    }
  goto ret0;

 L59800: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L34288;
  goto ret0;

 L34288: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L34289;
    }
  goto ret0;

 L34289: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L34290;
    }
  goto ret0;

 L34290: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L59802;
  goto ret0;

 L59802: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 8)
    goto L34291;
 L59803: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[3] = x2;
      goto L43659;
    }
  goto ret0;

 L34291: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L59804;
  goto L59803;

 L59804: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L34292;
      case 0LL:
        goto L34402;
      default:
        break;
      }
 L59806: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L34984;
    }
  goto L59803;

 L34292: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34293;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34293: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34294;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34294: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34295;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34295: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34296;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34296: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34297;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34297: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34298;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34298: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 11462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3361;  /* avx2_interleave_highv8si */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34402: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L34403;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34403: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34404;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34404: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34405;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34405: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34406;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34406: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34407;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34407: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34408;
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34408: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)]
      && 
#line 11517 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3367;  /* avx2_interleave_lowv8si */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L59806;

 L34984: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L34985;
    }
  goto L59803;

 L34985: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L34986;
    }
  goto L59803;

 L34986: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L34987;
    }
  goto L59803;

 L34987: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L34988;
    }
  goto L59803;

 L34988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L34989;
    }
  goto L59803;

 L34989: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L34990;
    }
  goto L59803;

 L34990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L34991;
    }
  goto L59803;

 L34991: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11941 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3))))
    {
      return 3409;  /* *avx512vl_shuf_i32x4_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L59803;

 L43659: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L43660;
    }
  goto ret0;

 L43660: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && avx_vperm2f128_parallel (operands[3], V8SImode)))
    {
      return 4198;  /* *avx_vperm2f128v8si_nozero */
    }
  goto ret0;

 L59801: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L35199;
    }
  goto ret0;

 L35199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L35200;
  goto ret0;

 L35200: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35201;
    }
  goto ret0;

 L35201: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35202;
    }
  goto ret0;

 L35202: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35203;
    }
  goto ret0;

 L35203: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35204;
    }
  goto ret0;

 L35204: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35205;
    }
  goto ret0;

 L35205: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35206;
    }
  goto ret0;

 L35206: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35207;
    }
  goto ret0;

 L35207: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35208;
    }
  goto ret0;

 L35208: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12174 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && 1
   && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   && INTVAL (operands[5]) + 4 == INTVAL (operands[9])))
    {
      return 3419;  /* avx2_pshufd_1 */
    }
  goto ret0;

 L36938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L59807;
  goto ret0;

 L59807: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_CONCAT:
      goto L36939;
    case VEC_SELECT:
      goto L43867;
    case SUBREG:
    case MEM:
      goto L59808;
    default:
      goto L59809;
   }
 L59808: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L42120;
    }
 L59809: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L42190;
    }
 L59810: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L43815;
    }
 L59812: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44527;
    }
  goto ret0;

 L36939: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L36940;
  goto ret0;

 L36940: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L59813;
  goto ret0;

 L59813: ATTRIBUTE_UNUSED_LABEL
  return recog_57 (x0, insn, pnum_clobbers);

 L43867: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L43868;
    }
  goto ret0;

 L43868: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L43869;
  goto ret0;

 L43869: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43870;
  goto ret0;

 L43870: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43871;
  goto ret0;

 L43871: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43872;
  goto ret0;

 L43872: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43873;
  goto ret0;

 L43873: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L43874;
    }
  goto ret0;

 L43874: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4219;  /* vec_set_hi_v8si */
    }
  goto ret0;

 L42120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16768 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4010;  /* avx2_vbroadcasti128_v8si */
    }
  x2 = XEXP (x1, 0);
  goto L59809;

 L42190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16851 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4024;  /* avx_vbroadcastf128_v8si */
    }
  x2 = XEXP (x1, 0);
  goto L59810;

 L43815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L43816;
  x2 = XEXP (x1, 0);
  goto L59812;

 L43816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L43817;
    }
  x2 = XEXP (x1, 0);
  goto L59812;

 L43817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L43818;
  x2 = XEXP (x1, 0);
  goto L59812;

 L43818: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L43819;
  x2 = XEXP (x1, 0);
  goto L59812;

 L43819: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L43820;
  x2 = XEXP (x1, 0);
  goto L59812;

 L43820: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L43821;
  x2 = XEXP (x1, 0);
  goto L59812;

 L43821: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 17568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4215;  /* vec_set_lo_v8si */
    }
  x2 = XEXP (x1, 0);
  goto L59812;

 L44527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44528;
    }
  goto ret0;

 L44528: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4302;  /* avx_vec_concatv8si */
    }
  goto ret0;

 L37848: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L37849;
    }
  goto ret0;

 L37849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13854 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3547;  /* *absv8si2 */
    }
  goto ret0;

 L38394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8QImode:
      goto L59815;
    case V8HImode:
      goto L59816;
    default:
      break;
    }
  goto ret0;

 L59815: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38395;
  goto ret0;

 L38395: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38396;
    }
  goto ret0;

 L38396: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L38397;
  goto ret0;

 L38397: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38398;
  goto ret0;

 L38398: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38399;
  goto ret0;

 L38399: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38400;
  goto ret0;

 L38400: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38401;
  goto ret0;

 L38401: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38402;
  goto ret0;

 L38402: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38403;
  goto ret0;

 L38403: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38404;
  goto ret0;

 L38404: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 14274 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3621;  /* avx2_sign_extendv8qiv8si2 */
    }
  goto ret0;

 L59816: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L38533;
    }
  goto ret0;

 L38533: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3633;  /* avx2_sign_extendv8hiv8si2 */
    }
  goto ret0;

 L38426: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8QImode:
      goto L59817;
    case V8HImode:
      goto L59818;
    default:
      break;
    }
  goto ret0;

 L59817: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38427;
  goto ret0;

 L38427: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38428;
    }
  goto ret0;

 L38428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L38429;
  goto ret0;

 L38429: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38430;
  goto ret0;

 L38430: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38431;
  goto ret0;

 L38431: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38432;
  goto ret0;

 L38432: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38433;
  goto ret0;

 L38433: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38434;
  goto ret0;

 L38434: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38435;
  goto ret0;

 L38435: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38436;
  goto ret0;

 L38436: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 14274 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3623;  /* avx2_zero_extendv8qiv8si2 */
    }
  goto ret0;

 L59818: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L38546;
    }
  goto ret0;

 L38546: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14310 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3635;  /* avx2_zero_extendv8hiv8si2 */
    }
  goto ret0;

 L40051: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L40052;
    }
  goto ret0;

 L40052: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L40053;
    }
  goto ret0;

 L40053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L40054;
    }
  goto ret0;

 L40054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 192 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3780;  /* xop_pcmov_v8si256 */
    }
  goto ret0;

 L41084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L59819;
    case V2SImode:
      goto L59821;
    case V4SImode:
      goto L59822;
    default:
      break;
    }
  goto ret0;

 L59819: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L41085;
    case ZERO_EXTEND:
      goto L42438;
    case REG:
    case SUBREG:
    case MEM:
      goto L59820;
    default:
      goto ret0;
   }
 L59820: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L41952;
    }
  goto ret0;

 L41085: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L59824;
    case V8SImode:
      goto L59825;
    default:
      break;
    }
  goto ret0;

 L59824: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L41086;
    }
  goto ret0;

 L41086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41087;
  goto ret0;

 L41087: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L59826;
  goto ret0;

 L59826: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L59828;
  goto ret0;

 L59828: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 280 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3875;  /* avx2_pbroadcastv8si */
    }
 L59829: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3927;  /* avx512vl_vec_dupv8si */
    }
  goto ret0;

 L59825: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L41128;
    }
  goto ret0;

 L41128: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41129;
  goto ret0;

 L41129: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3881;  /* avx2_pbroadcastv8si_1 */
    }
  goto ret0;

 L42438: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L42439;
    }
  goto ret0;

 L42439: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4058;  /* avx512cd_maskw_vec_dupv8si */
    }
  goto ret0;

 L41952: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3983;  /* *avx512vl_vec_dup_gprv8si */
    }
 L42150: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16786 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4016;  /* *vec_dupv8si */
    }
 L42160: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4018;  /* vec_dupv8si */
    }
  goto ret0;

 L59821: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L42230;
  goto ret0;

 L42230: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L42231;
    }
  goto ret0;

 L42231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L42232;
  goto ret0;

 L42232: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42233;
  goto ret0;

 L42233: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16864 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4030;  /* *avx512dq_broadcastv8si */
    }
  goto ret0;

 L59822: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L42310;
    }
  goto ret0;

 L42310: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16891 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 4038;  /* *avx512vl_broadcastv8si_1 */
    }
  goto ret0;

 L51269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L51270;
    }
  goto ret0;

 L51270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4651;  /* clzv8si2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_59 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V8SImode))
    {
      operands[5] = x1;
      goto L49495;
    }
 L57057: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8SImode))
    {
      operands[0] = x1;
      goto L23093;
    }
 L57072: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8SImode))
    {
      operands[0] = x1;
      goto L11563;
    }
 L57090: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V8SImode))
    {
      operands[0] = x1;
      goto L11815;
    }
 L57123: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8SImode))
    {
      operands[0] = x1;
      goto L23106;
    }
  goto ret0;

 L49495: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L59552;
    case DImode:
      goto L59553;
    default:
      break;
    }
  goto L57057;

 L59552: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49496;
  goto L57057;

 L49496: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49497;
    }
  goto L57057;

 L49497: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L59554;
    case V4DImode:
      goto L59555;
    default:
      break;
    }
  goto L57057;

 L59554: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49498;
    }
  goto L57057;

 L49498: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49499;
    }
  goto L57057;

 L49499: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49500;
  x1 = XEXP (x0, 0);
  goto L57057;

 L49500: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49501;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L49501: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L49502;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L49502: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4505;  /* *avx512f_scattersiv8si */
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L59555: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50050;
    }
  goto L57057;

 L50050: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50051;
    }
  goto L57057;

 L50051: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50052;
  x1 = XEXP (x0, 0);
  goto L57057;

 L50052: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50053;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L50053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L50054;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L50054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4529;  /* *avx512f_scatterdiv8si */
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L59553: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49519;
  goto L57057;

 L49519: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49520;
    }
  goto L57057;

 L49520: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L59556;
    case V4DImode:
      goto L59557;
    default:
      break;
    }
  goto L57057;

 L59556: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49521;
    }
  goto L57057;

 L49521: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49522;
    }
  goto L57057;

 L49522: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49523;
  x1 = XEXP (x0, 0);
  goto L57057;

 L49523: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49524;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L49524: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L49525;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L49525: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4506;  /* *avx512f_scattersiv8si */
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L59557: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50073;
    }
  goto L57057;

 L50073: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50074;
    }
  goto L57057;

 L50074: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50075;
  x1 = XEXP (x0, 0);
  goto L57057;

 L50075: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50076;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L50076: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L50077;
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L50077: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4530;  /* *avx512f_scatterdiv8si */
    }
  x1 = XEXP (x0, 0);
  goto L57057;

 L23093: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode)
    goto L59558;
 L11500: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V8SImode))
    {
      operands[1] = x1;
      goto L11501;
    }
  x1 = XEXP (x0, 0);
  goto L57072;

 L59558: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L23094;
    case VEC_MERGE:
      goto L23167;
    case SS_TRUNCATE:
      goto L25766;
    case TRUNCATE:
      goto L25771;
    case US_TRUNCATE:
      goto L25776;
    case UNSPEC:
      goto L59564;
    default:
     break;
   }
  goto L11500;

 L23094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59565;
  goto L11500;

 L59565: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L23095;
    }
 L59566: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L23155;
    }
  goto L11500;

 L23095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23096;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23097;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23098;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23099;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23099: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23100;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23100: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23101;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23101: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23102;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23102: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23103;
  x2 = XEXP (x1, 0);
  goto L59566;

 L23103: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 6871 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 2282;  /* vec_extract_hi_v16si */
    }
  x2 = XEXP (x1, 0);
  goto L59566;

 L23155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23156;
  goto L11500;

 L23156: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23157;
  goto L11500;

 L23157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23158;
  goto L11500;

 L23158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23159;
  goto L11500;

 L23159: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23160;
  goto L11500;

 L23160: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23161;
  goto L11500;

 L23161: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23162;
  goto L11500;

 L23162: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23163;
  goto L11500;

 L23163: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 6943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && 1
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2286;  /* vec_extract_lo_v16si */
    }
  goto L11500;

 L23167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59567;
  goto L11500;

 L59567: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L23168;
    case SS_TRUNCATE:
      goto L25845;
    case TRUNCATE:
      goto L25853;
    case US_TRUNCATE:
      goto L25861;
    default:
     break;
   }
  goto L11500;

 L23168: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L23169;
    }
  goto L11500;

 L23169: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23170;
  goto L11500;

 L23170: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23171;
  goto L11500;

 L23171: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23172;
  goto L11500;

 L23172: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23173;
  goto L11500;

 L23173: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23174;
  goto L11500;

 L23174: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23175;
  goto L11500;

 L23175: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23176;
  goto L11500;

 L23176: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23177;
  goto L11500;

 L23177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23178;
  goto L11500;

 L23178: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L23179;
    }
  goto L11500;

 L23179: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23180;
    }
  goto L11500;

 L23180: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (64 == 64 || TARGET_AVX512VL)
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))))
    {
      return 2287;  /* vec_extract_lo_v16si_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L25845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25846;
    }
  goto L11500;

 L25846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L25847;
    }
  goto L11500;

 L25847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25848;
    }
  goto L11500;

 L25848: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2539;  /* avx512f_ss_truncatev8div8si2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L25853: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25854;
    }
  goto L11500;

 L25854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L25855;
    }
  goto L11500;

 L25855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25856;
    }
  goto L11500;

 L25856: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2540;  /* avx512f_truncatev8div8si2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L25861: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25862;
    }
  goto L11500;

 L25862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L25863;
    }
  goto L11500;

 L25863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25864;
    }
  goto L11500;

 L25864: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2541;  /* avx512f_us_truncatev8div8si2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L25766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L25767;
    }
  goto L11500;

 L25767: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2527;  /* *avx512f_ss_truncatev8div8si2 */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L25771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L25772;
    }
  goto L11500;

 L25772: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2528;  /* *avx512f_truncatev8div8si2 */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L25776: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L25777;
    }
  goto L11500;

 L25777: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2529;  /* *avx512f_us_truncatev8div8si2 */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L59564: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L44094;
  goto L11500;

 L44094: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44095;
    }
  goto L11500;

 L44095: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4243;  /* avx_si256_si */
    }
  x1 = XEXP (x0, 1);
  goto L11500;

 L11501: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V8SImode)
       || register_operand (operands[1], V8SImode))) && 
#line 167 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1004;  /* *movv8si_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57072;

 L11563: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode)
    goto L59571;
  x1 = XEXP (x0, 0);
  goto L57090;

 L59571: ATTRIBUTE_UNUSED_LABEL
  tem = recog_54 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57090;

 L11815: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode)
    goto L59613;
  x1 = XEXP (x0, 0);
  goto L57123;

 L59613: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11816;
    case UNSPEC:
      goto L59617;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57123;

 L11816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode)
    goto L59621;
  x1 = XEXP (x0, 0);
  goto L57123;

 L59621: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59623;
    case VEC_SELECT:
      goto L23048;
    case REG:
    case SUBREG:
      goto L59620;
    default:
      x1 = XEXP (x0, 0);
      goto L57123;
   }
 L59620: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L11817;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L59623: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12337;
  x1 = XEXP (x0, 0);
  goto L57123;

 L12337: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L12338;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L12338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12339;
  x1 = XEXP (x0, 0);
  goto L57123;

 L12339: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12340;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L12340: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1135;  /* avx512vl_storedquv8si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L23048: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L23049;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L23049: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23050;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23050: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23051;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23051: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23052;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23052: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23053;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23053: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23054;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23054: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23055;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23055: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23056;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23056: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23057;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23057: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L23058;
  x1 = XEXP (x0, 0);
  goto L57123;

 L23058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L23059;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L23059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23060;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L23060: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6854 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2279;  /* vec_extract_hi_v16si_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L11817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11818;
  x1 = XEXP (x0, 0);
  goto L57123;

 L11818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11819;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L11819: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1055;  /* avx512vl_storev8si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L59617: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L59624;
    case 3:
      goto L59625;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L59624: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 105)
    goto L12303;
  x1 = XEXP (x0, 0);
  goto L57123;

 L12303: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L12304;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L12304: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1434 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 298 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1129;  /* avx_storedquv8si */
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L59625: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44082;
    case 165LL:
      goto L50515;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L44082: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44083;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L44083: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44084;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L44084: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4241;  /* avx2_maskstored256 */
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L50515: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L50516;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L50516: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50517;
  x1 = XEXP (x0, 0);
  goto L57123;

 L50517: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50518;
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L50518: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4561;  /* avx512vl_compressstorev8si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57123;

 L23106: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode)
    goto L59627;
  goto ret0;

 L59627: ATTRIBUTE_UNUSED_LABEL
  return recog_58 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_60 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11571;
    case SUBREG:
      goto L59857;
    case UNSPEC:
      goto L59858;
    case FIX:
      goto L20473;
    case VEC_CONCAT:
      goto L21118;
    case UNSIGNED_FIX:
      goto L21319;
    case VEC_SELECT:
      goto L22593;
    default:
     break;
   }
  goto ret0;

 L11571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L59863;
 L22033: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L22034;
    }
  goto ret0;

 L59863: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59869;
    case FIX:
      goto L20479;
    case VEC_CONCAT:
      goto L21127;
    case UNSIGNED_FIX:
      goto L21325;
    case REG:
    case SUBREG:
    case MEM:
      goto L59861;
    default:
      goto L59862;
   }
 L59861: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L11572;
    }
 L59862: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L11698;
    }
  goto L22033;

 L59869: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L59872;
  goto L22033;

 L59872: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12222;
    case 41LL:
      goto L20131;
    case 150LL:
      goto L20248;
    default:
      break;
    }
  goto L22033;

 L12222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L12223;
    }
  goto L22033;

 L12223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L12224;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L12224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12225;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L12225: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 298 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1115;  /* *sse2_loaddquv4si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L20131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L59875;
    case V4DFmode:
      goto L59876;
    default:
      break;
    }
  goto L22033;

 L59875: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20132;
    }
  goto L22033;

 L20132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L20133;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L20133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20134;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L20134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4054 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 1954;  /* sse2_fix_notruncv4sfv4si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L59876: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21105;
    }
  goto L22033;

 L21105: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21106;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21106: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21107;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21107: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4622 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2075;  /* avx_cvtpd2dq256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L20248: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L59877;
    case V4DFmode:
      goto L59878;
    default:
      break;
    }
  goto L22033;

 L59877: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20249;
    }
  goto L22033;

 L20249: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L20250;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L20250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20251;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L20251: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1969;  /* avx512vl_ufix_notruncv4sfv4si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L59878: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21185;
    }
  goto L22033;

 L21185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21186;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21186: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21187;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21187: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2085;  /* ufix_notruncv4dfv4si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L20479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L59879;
    case V4DFmode:
      goto L59880;
    default:
      break;
    }
  goto L22033;

 L59879: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20480;
    }
  goto L22033;

 L20480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L20481;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L20481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20482;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L20482: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4155 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 1998;  /* fix_truncv4sfv4si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L59880: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21313;
    }
  goto L22033;

 L21313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21314;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21315;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21315: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4724 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F))))
    {
      return 2100;  /* fix_truncv4dfv4si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L21127: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode)
    goto L59881;
  goto L22033;

 L59881: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case UNSPEC:
      goto L59885;
    case UNSIGNED_FIX:
      goto L21296;
    case FIX:
      goto L21730;
    default:
     break;
   }
  goto L22033;

 L59885: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 1)
    goto L59887;
  goto L22033;

 L59887: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 41LL:
      goto L21128;
    case 150LL:
      goto L21212;
    default:
      break;
    }
  goto L22033;

 L21128: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L21129;
    }
  goto L22033;

 L21129: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == CONST_VECTOR
      && XVECLEN (x3, 0) == 2)
    goto L21130;
  goto L22033;

 L21130: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21131;
  goto L22033;

 L21131: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21132;
  goto L22033;

 L21132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21133;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21134;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4656 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2078;  /* sse2_cvtpd2dq_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L21212: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L21213;
    }
  goto L22033;

 L21213: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == CONST_VECTOR
      && XVECLEN (x3, 0) == 2)
    goto L21214;
  goto L22033;

 L21214: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21215;
  goto L22033;

 L21215: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21216;
  goto L22033;

 L21216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21217;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21218;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21218: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4694 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2088;  /* ufix_notruncv2dfv2si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L21296: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L21297;
    }
  goto L22033;

 L21297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == CONST_VECTOR
      && XVECLEN (x3, 0) == 2)
    goto L21298;
  goto L22033;

 L21298: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21299;
  goto L22033;

 L21299: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21300;
  goto L22033;

 L21300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21301;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21301: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21302;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21302: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4715 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2098;  /* ufix_truncv2dfv2si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L21730: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L21731;
    }
  goto L22033;

 L21731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == CONST_VECTOR
      && XVECLEN (x3, 0) == 2)
    goto L21732;
  goto L22033;

 L21732: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21733;
  goto L22033;

 L21733: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21734;
  goto L22033;

 L21734: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21735;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21735: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21736;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21736: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2156;  /* sse2_cvttpd2dq_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L21325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DFmode:
      goto L59889;
    case V4SFmode:
      goto L59890;
    default:
      break;
    }
  goto L22033;

 L59889: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21326;
    }
  goto L22033;

 L21326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21327;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21328;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21328: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL && TARGET_AVX512F)))
    {
      return 2102;  /* ufix_truncv4dfv4si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L59890: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21714;
    }
  goto L22033;

 L21714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L21715;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21715: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21716;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L21716: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2154;  /* ufix_truncv4sfv4si2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L11572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L11573;
    }
  x2 = XEXP (x1, 0);
  goto L59862;

 L11573: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11574;
    }
  x2 = XEXP (x1, 0);
  goto L59862;

 L11574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1020;  /* avx512vl_loadv4si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L59862;

 L11698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L11699;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L11699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11700;
    }
  x2 = XEXP (x1, 0);
  goto L22033;

 L11700: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1038;  /* avx512vl_blendmv4si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22033;

 L22034: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L22035;
    }
  goto ret0;

 L22035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L22036;
    }
  goto ret0;

 L22036: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2197;  /* *avx512vl_cvtmask2dv4si */
    }
  goto ret0;

 L59857: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 0)
    goto L11951;
  goto ret0;

 L11951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L11952;
    }
  goto ret0;

 L11952: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1071 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 1073;  /* movdi_to_sse */
    }
  goto ret0;

 L59858: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L59891;
  goto ret0;

 L59891: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12216;
    case 41LL:
      goto L20125;
    case 150LL:
      goto L20234;
    default:
      break;
    }
  goto ret0;

 L12216: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L12217;
    }
  goto ret0;

 L12217: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 298 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1114;  /* *sse2_loaddquv4si */
    }
  goto ret0;

 L20125: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L59894;
    case V4DFmode:
      goto L59895;
    default:
      break;
    }
  goto ret0;

 L59894: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L20126;
    }
  goto ret0;

 L20126: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4054 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 1953;  /* sse2_fix_notruncv4sfv4si */
    }
  goto ret0;

 L59895: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21099;
    }
  goto ret0;

 L21099: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4622 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2074;  /* avx_cvtpd2dq256 */
    }
  goto ret0;

 L20234: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L59896;
    case V4DFmode:
      goto L59897;
    default:
      break;
    }
  goto ret0;

 L59896: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L20235;
    }
  goto ret0;

 L20235: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1967;  /* *avx512vl_ufix_notruncv4sfv4si */
    }
  goto ret0;

 L59897: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21171;
    }
  goto ret0;

 L21171: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2083;  /* ufix_notruncv4dfv4si2 */
    }
  goto ret0;

 L20473: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L59898;
    case V4DFmode:
      goto L59899;
    default:
      break;
    }
  goto ret0;

 L59898: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L20474;
    }
  goto ret0;

 L20474: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4155 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 1997;  /* fix_truncv4sfv4si2 */
    }
  goto ret0;

 L59899: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21307;
    }
  goto ret0;

 L21307: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4724 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F)))
    {
      return 2099;  /* fix_truncv4dfv4si2 */
    }
  goto ret0;

 L21118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SImode)
    goto L59900;
  goto ret0;

 L59900: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59904;
    case UNSIGNED_FIX:
      goto L21287;
    case FIX:
      goto L21721;
    default:
     break;
   }
  goto ret0;

 L59904: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L59906;
  goto ret0;

 L59906: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 41LL:
      goto L21119;
    case 150LL:
      goto L21203;
    default:
      break;
    }
  goto ret0;

 L21119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21120;
    }
  goto ret0;

 L21120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L21121;
  goto ret0;

 L21121: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21122;
  goto ret0;

 L21122: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4656 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2077;  /* sse2_cvtpd2dq */
    }
  goto ret0;

 L21203: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21204;
    }
  goto ret0;

 L21204: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L21205;
  goto ret0;

 L21205: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21206;
  goto ret0;

 L21206: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4694 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2087;  /* ufix_notruncv2dfv2si2 */
    }
  goto ret0;

 L21287: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21288;
    }
  goto ret0;

 L21288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L21289;
  goto ret0;

 L21289: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21290;
  goto ret0;

 L21290: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4715 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2097;  /* ufix_truncv2dfv2si2 */
    }
  goto ret0;

 L21721: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21722;
    }
  goto ret0;

 L21722: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L21723;
  goto ret0;

 L21723: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21724;
  goto ret0;

 L21724: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2155;  /* sse2_cvttpd2dq */
    }
  goto ret0;

 L21319: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4DFmode:
      goto L59908;
    case V4SFmode:
      goto L59909;
    default:
      break;
    }
  goto ret0;

 L59908: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21320;
    }
  goto ret0;

 L21320: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL && TARGET_AVX512F))
    {
      return 2101;  /* ufix_truncv4dfv4si2 */
    }
  goto ret0;

 L59909: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L21708;
    }
  goto ret0;

 L21708: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2153;  /* ufix_truncv4sfv4si2 */
    }
  goto ret0;

 L22593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L22594;
  goto ret0;

 L22594: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L22595;
    }
  goto ret0;

 L22595: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L22596;
    }
  goto ret0;

 L22596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22597;
  goto ret0;

 L22597: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22598;
    }
  goto ret0;

 L22598: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L22599;
    }
  goto ret0;

 L22599: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L22600;
    }
  goto ret0;

 L22600: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L22601;
    }
  goto ret0;

 L22601: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6136 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2232;  /* sse_shufps_v4si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_61 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L22878;
    case UNSPEC:
      goto L60017;
    case PLUS:
      goto L28464;
    case MINUS:
      goto L28479;
    case MULT:
      goto L29827;
    case ASHIFTRT:
      goto L29911;
    case ASHIFT:
      goto L30121;
    case LSHIFTRT:
      goto L30136;
    case ROTATE:
      goto L30367;
    case ROTATERT:
      goto L30382;
    case SMAX:
      goto L30859;
    case SMIN:
      goto L30874;
    case UMAX:
      goto L30889;
    case UMIN:
      goto L30904;
    case AND:
      goto L32189;
    case IOR:
      goto L32779;
    case XOR:
      goto L32794;
    case VEC_DUPLICATE:
      goto L34524;
    case ABS:
      goto L37890;
    case SIGN_EXTEND:
      goto L38469;
    case ZERO_EXTEND:
      goto L38493;
    case CLZ:
      goto L51288;
    case REG:
    case SUBREG:
    case MEM:
      goto L60009;
    default:
      goto ret0;
   }
 L60009: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L38241;
    }
  goto ret0;

 L22878: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L60024;
    case V8SImode:
      goto L60027;
    case V4SImode:
      goto L60028;
    default:
      break;
    }
  goto ret0;

 L60024: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L22879;
    }
  goto ret0;

 L22879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22880;
  goto ret0;

 L22880: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22881;
    }
  goto ret0;

 L22881: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22882;
    }
  goto ret0;

 L22882: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L22883;
    }
  goto ret0;

 L22883: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L22884;
    }
  goto ret0;

 L22884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[6] = x2;
      goto L22885;
    }
  goto ret0;

 L22885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L22886;
    }
  goto ret0;

 L22886: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6702 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[2]) == (INTVAL (operands[3]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[4]) == (INTVAL (operands[5]) - 1)))))
    {
      return 2265;  /* avx512f_vextracti32x4_1_mask */
    }
  goto ret0;

 L60027: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L34384;
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L23267;
    }
 L60026: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L23363;
    }
  goto ret0;

 L34384: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L34385;
    }
  goto ret0;

 L34385: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L34386;
    }
  goto ret0;

 L34386: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L34387;
  goto ret0;

 L34387: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60029;
  goto ret0;

 L60029: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 2LL:
        goto L34388;
      case 0LL:
        goto L34498;
      default:
        break;
      }
  goto ret0;

 L34388: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34389;
  goto ret0;

 L34389: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34390;
  goto ret0;

 L34390: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34391;
  goto ret0;

 L34391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L34392;
    }
  goto ret0;

 L34392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34393;
    }
  goto ret0;

 L34393: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11497 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 3366;  /* vec_interleave_highv4si_mask */
    }
  goto ret0;

 L34498: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34499;
  goto ret0;

 L34499: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34500;
  goto ret0;

 L34500: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34501;
  goto ret0;

 L34501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L34502;
    }
  goto ret0;

 L34502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34503;
    }
  goto ret0;

 L34503: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11551 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 3372;  /* vec_interleave_lowv4si_mask */
    }
  goto ret0;

 L23267: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23268;
  x3 = XEXP (x2, 0);
  goto L60026;

 L23268: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23269;
  x3 = XEXP (x2, 0);
  goto L60026;

 L23269: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23270;
  x3 = XEXP (x2, 0);
  goto L60026;

 L23270: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23271;
  x3 = XEXP (x2, 0);
  goto L60026;

 L23271: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23272;
  x3 = XEXP (x2, 0);
  goto L60026;

 L23272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L23273;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60026;

 L23273: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23274;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60026;

 L23274: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7062 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL && TARGET_AVX512DQ)))
    {
      return 2297;  /* vec_extract_lo_v8si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60026;

 L23363: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23364;
  goto ret0;

 L23364: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23365;
  goto ret0;

 L23365: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23366;
  goto ret0;

 L23366: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23367;
  goto ret0;

 L23367: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23368;
  goto ret0;

 L23368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L23369;
    }
  goto ret0;

 L23369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23370;
    }
  goto ret0;

 L23370: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7117 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2305;  /* vec_extract_hi_v8si_mask */
    }
  goto ret0;

 L60028: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L35241;
    }
  goto ret0;

 L35241: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L35242;
  goto ret0;

 L35242: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L35243;
    }
  goto ret0;

 L35243: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35244;
    }
  goto ret0;

 L35244: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35245;
    }
  goto ret0;

 L35245: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35246;
    }
  goto ret0;

 L35246: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[6] = x2;
      goto L35247;
    }
  goto ret0;

 L35247: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L35248;
    }
  goto ret0;

 L35248: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12236 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 3422;  /* sse2_pshufd_1_mask */
    }
  goto ret0;

 L60017: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L60031;
    case 3:
      goto L60032;
    case 2:
      goto L60033;
    case 1:
      goto L60037;
    default:
      break;
    }
  goto ret0;

 L60031: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 159)
    goto L24047;
  goto ret0;

 L24047: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L24048;
    }
  goto ret0;

 L24048: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L24049;
    }
  goto ret0;

 L24049: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L24050;
    }
  goto ret0;

 L24050: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24051;
    }
  goto ret0;

 L24051: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L24052;
    }
 L24141: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24142;
  goto ret0;

 L24052: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24053;
    }
  x2 = XEXP (x1, 1);
  goto L24141;

 L24053: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2361;  /* avx512vl_vternlogv4si_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24141;

 L24142: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24143;
    }
  goto ret0;

 L24143: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7713 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2370;  /* avx512vl_vternlogv4si_mask */
    }
  goto ret0;

 L60032: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 162LL:
      goto L24454;
    case 147LL:
      goto L42806;
    case 149LL:
      goto L43049;
    case 148LL:
      goto L43292;
    default:
      break;
    }
  goto ret0;

 L24454: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L24455;
    }
  goto ret0;

 L24455: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L24456;
    }
  goto ret0;

 L24456: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L24457;
    }
  goto ret0;

 L24457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L24458;
    }
  goto ret0;

 L24458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24459;
    }
  goto ret0;

 L24459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2407;  /* avx512vl_alignv4si_mask */
    }
  goto ret0;

 L42806: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L42807;
    }
  goto ret0;

 L42807: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L42808;
    }
  goto ret0;

 L42808: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L42809;
    }
  goto ret0;

 L42809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L42810;
    }
  goto ret0;

 L42810: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42811;
    }
  goto ret0;

 L42811: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4104;  /* avx512vl_vpermi2varv4si3_maskz_1 */
    }
  goto ret0;

 L43049: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L43050;
    }
  goto ret0;

 L43050: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L43051;
    }
  goto ret0;

 L43051: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L43052;
    }
  goto ret0;

 L43052: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43053;
  goto ret0;

 L43053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43054;
    }
  goto ret0;

 L43054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4131;  /* avx512vl_vpermi2varv4si3_mask */
    }
  goto ret0;

 L43292: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L43293;
    }
  goto ret0;

 L43293: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L43294;
    }
  goto ret0;

 L43294: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L43295;
    }
  goto ret0;

 L43295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L43296;
    }
 L43538: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43539;
  goto ret0;

 L43296: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43297;
    }
  x2 = XEXP (x1, 1);
  goto L43538;

 L43297: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4158;  /* avx512vl_vpermt2varv4si3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43538;

 L43539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43540;
    }
  goto ret0;

 L43540: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4185;  /* avx512vl_vpermt2varv4si3_mask */
    }
  goto ret0;

 L60033: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 184)
    goto L29647;
  goto ret0;

 L29647: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L29648;
    }
  goto ret0;

 L29648: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L29649;
    }
  goto ret0;

 L29649: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L29650;
    }
  goto ret0;

 L29650: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29651;
    }
  goto ret0;

 L29651: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9586 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2844;  /* avx512bw_pmaddwd512v8hi_mask */
    }
  goto ret0;

 L60037: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 163)
    goto L51366;
  goto ret0;

 L51366: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L51367;
    }
  goto ret0;

 L51367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51368;
    }
  goto ret0;

 L51368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51369;
    }
  goto ret0;

 L51369: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4666;  /* conflictv4si_mask */
    }
  goto ret0;

 L28464: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L28465;
    }
  goto ret0;

 L28465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L28466;
    }
  goto ret0;

 L28466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L28467;
    }
  goto ret0;

 L28467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28468;
    }
  goto ret0;

 L28468: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V4SImode, operands))))
    {
      return 2722;  /* *addv4si3 */
    }
 L28618: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (PLUS, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2741;  /* *addv4si3_mask */
    }
  goto ret0;

 L28479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L28480;
    }
  goto ret0;

 L28480: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L28481;
    }
  goto ret0;

 L28481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L28482;
    }
  goto ret0;

 L28482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28483;
    }
  goto ret0;

 L28483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V4SImode, operands))))
    {
      return 2724;  /* *subv4si3 */
    }
 L28627: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (MINUS, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2742;  /* *subv4si3_mask */
    }
  goto ret0;

 L29827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L29828;
    }
  goto ret0;

 L29828: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L29829;
    }
  goto ret0;

 L29829: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L29830;
    }
  goto ret0;

 L29830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29831;
    }
  goto ret0;

 L29831: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V4SImode, operands) && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2858;  /* *sse4_1_mulv4si3_mask */
    }
  goto ret0;

 L29911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60038;
  goto ret0;

 L60038: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L29912;
    }
 L60039: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L44117;
    }
  goto ret0;

 L29912: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29913;
    }
  x3 = XEXP (x2, 0);
  goto L60039;

 L29913: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L29914;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60039;

 L29914: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29915;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60039;

 L29915: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2870;  /* ashrv4si3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60039;

 L44117: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L44118;
    }
  goto ret0;

 L44118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L44119;
    }
  goto ret0;

 L44119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44120;
    }
  goto ret0;

 L44120: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 4247;  /* avx2_ashrvv4si_mask */
    }
  goto ret0;

 L30121: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L44312;
    }
  goto ret0;

 L44312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L44313;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30123;
    }
  goto ret0;

 L44313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L44314;
    }
  goto ret0;

 L44314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44315;
    }
  goto ret0;

 L44315: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 4273;  /* avx2_ashlvv4si_mask */
    }
  goto ret0;

 L30123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30124;
    }
  goto ret0;

 L30124: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30125;
    }
  goto ret0;

 L30125: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2898;  /* ashlv4si3_mask */
    }
  goto ret0;

 L30136: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L44327;
    }
  goto ret0;

 L44327: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L44328;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30138;
    }
  goto ret0;

 L44328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L44329;
    }
  goto ret0;

 L44329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44330;
    }
  goto ret0;

 L44330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 4275;  /* avx2_lshrvv4si_mask */
    }
  goto ret0;

 L30138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30139;
    }
  goto ret0;

 L30139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30140;
    }
  goto ret0;

 L30140: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2900;  /* lshrv4si3_mask */
    }
  goto ret0;

 L30367: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60040;
  goto ret0;

 L60040: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30368;
    }
 L60041: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30548;
    }
  goto ret0;

 L30368: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L30369;
    }
  x3 = XEXP (x2, 0);
  goto L60041;

 L30369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30370;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60041;

 L30370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30371;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60041;

 L30371: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2932;  /* avx512vl_rolvv4si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60041;

 L30548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30549;
    }
  goto ret0;

 L30549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30550;
    }
  goto ret0;

 L30550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30551;
    }
  goto ret0;

 L30551: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2956;  /* avx512vl_rolv4si_mask */
    }
  goto ret0;

 L30382: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60042;
  goto ret0;

 L60042: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30383;
    }
 L60043: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30563;
    }
  goto ret0;

 L30383: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L30384;
    }
  x3 = XEXP (x2, 0);
  goto L60043;

 L30384: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30385;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60043;

 L30385: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30386;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60043;

 L30386: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2934;  /* avx512vl_rorvv4si_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60043;

 L30563: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30564;
    }
  goto ret0;

 L30564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30565;
    }
  goto ret0;

 L30565: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30566;
    }
  goto ret0;

 L30566: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2958;  /* avx512vl_rorv4si_mask */
    }
  goto ret0;

 L30859: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30860;
    }
  goto ret0;

 L30860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L30861;
    }
  goto ret0;

 L30861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30862;
    }
  goto ret0;

 L30862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30863;
    }
  goto ret0;

 L30863: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3000;  /* *avx512bw_smaxv4si3_mask */
    }
 L31493: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (SMAX, V4SImode, operands))))
    {
      return 3084;  /* *sse4_1_smaxv4si3_mask */
    }
  goto ret0;

 L30874: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30875;
    }
  goto ret0;

 L30875: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L30876;
    }
  goto ret0;

 L30876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30877;
    }
  goto ret0;

 L30877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30878;
    }
  goto ret0;

 L30878: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3002;  /* *avx512bw_sminv4si3_mask */
    }
 L31508: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (SMIN, V4SImode, operands))))
    {
      return 3086;  /* *sse4_1_sminv4si3_mask */
    }
  goto ret0;

 L30889: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30890;
    }
  goto ret0;

 L30890: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L30891;
    }
  goto ret0;

 L30891: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30892;
    }
  goto ret0;

 L30892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30893;
    }
  goto ret0;

 L30893: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3004;  /* *avx512bw_umaxv4si3_mask */
    }
 L31565: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (UMAX, V4SImode, operands))))
    {
      return 3094;  /* *sse4_1_umaxv4si3_mask */
    }
  goto ret0;

 L30904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L30905;
    }
  goto ret0;

 L30905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L30906;
    }
  goto ret0;

 L30906: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L30907;
    }
  goto ret0;

 L30907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30908;
    }
  goto ret0;

 L30908: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3006;  /* *avx512bw_uminv4si3_mask */
    }
 L31580: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (UMIN, V4SImode, operands))))
    {
      return 3096;  /* *sse4_1_uminv4si3_mask */
    }
  goto ret0;

 L32189: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60044;
  goto ret0;

 L60044: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32190;
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L32765;
    }
  goto ret0;

 L32190: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L32191;
    }
  goto ret0;

 L32191: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L32192;
    }
  goto ret0;

 L32192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L32193;
    }
  goto ret0;

 L32193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32194;
    }
  goto ret0;

 L32194: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 3182;  /* *andnotv4si3 */
    }
 L32258: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10881 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3189;  /* *andnotv4si3_mask */
    }
  goto ret0;

 L32765: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L32766;
    }
  goto ret0;

 L32766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L32767;
    }
  goto ret0;

 L32767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32768;
    }
  goto ret0;

 L32768: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V4SImode, operands))))
    {
      return 3254;  /* andv4si3_mask */
    }
  goto ret0;

 L32779: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L32780;
    }
  goto ret0;

 L32780: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L32781;
    }
  goto ret0;

 L32781: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L32782;
    }
  goto ret0;

 L32782: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32783;
    }
  goto ret0;

 L32783: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V4SImode, operands))))
    {
      return 3256;  /* iorv4si3_mask */
    }
  goto ret0;

 L32794: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L32795;
    }
  goto ret0;

 L32795: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L32796;
    }
  goto ret0;

 L32796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L32797;
    }
  goto ret0;

 L32797: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32798;
    }
  goto ret0;

 L32798: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V4SImode, operands))))
    {
      return 3258;  /* xorv4si3_mask */
    }
  goto ret0;

 L34524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60047;
    case V2SImode:
      goto L60049;
    default:
      break;
    }
  goto ret0;

 L60047: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41529;
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L34525;
    }
 L60048: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L41971;
    }
  goto ret0;

 L41529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L41530;
    }
  goto ret0;

 L41530: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41531;
  goto ret0;

 L41531: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41532;
  goto ret0;

 L41532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L41533;
    }
  goto ret0;

 L41533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41534;
    }
  goto ret0;

 L41534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3930;  /* avx512vl_vec_dupv4si_mask */
    }
  goto ret0;

 L34525: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L34526;
    }
 L35438: ATTRIBUTE_UNUSED_LABEL
  if (reg_or_0_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L35439;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60048;

 L34526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34527;
    }
  x2 = XEXP (x1, 1);
  goto L35438;

 L34527: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ((unsigned) exact_log2 (INTVAL (operands[3]))
       < GET_MODE_NUNITS (V4SImode))) && 
#line 11600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1)))
    {
      return 3375;  /* sse4_1_pinsrd */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L35438;

 L35439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 12584 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3435;  /* sse2_loadld */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60048;

 L41971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L41972;
    }
  goto ret0;

 L41972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41973;
    }
  goto ret0;

 L41973: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3986;  /* avx512vl_vec_dup_gprv4si_mask */
    }
  goto ret0;

 L60049: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L42259;
  goto ret0;

 L42259: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L42260;
    }
  goto ret0;

 L42260: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L42261;
  goto ret0;

 L42261: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42262;
  goto ret0;

 L42262: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L42263;
  goto ret0;

 L42263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L42264;
    }
  goto ret0;

 L42264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42265;
    }
  goto ret0;

 L42265: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16864 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4033;  /* avx512dq_broadcastv4si_mask */
    }
  goto ret0;

 L37890: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L37891;
    }
  goto ret0;

 L37891: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L37892;
    }
  goto ret0;

 L37892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L37893;
    }
  goto ret0;

 L37893: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3554;  /* absv4si2_mask */
    }
  goto ret0;

 L38469: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4QImode:
      goto L60050;
    case V4HImode:
      goto L60051;
    default:
      break;
    }
  goto ret0;

 L60050: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38470;
  goto ret0;

 L38470: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38471;
    }
  goto ret0;

 L38471: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38472;
  goto ret0;

 L38472: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38473;
  goto ret0;

 L38473: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38474;
  goto ret0;

 L38474: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38475;
  goto ret0;

 L38475: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38476;
  goto ret0;

 L38476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L38477;
    }
  goto ret0;

 L38477: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38478;
    }
  goto ret0;

 L38478: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3626;  /* sse4_1_sign_extendv4qiv4si2_mask */
    }
  goto ret0;

 L60051: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38570;
  goto ret0;

 L38570: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L38571;
    }
  goto ret0;

 L38571: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38572;
  goto ret0;

 L38572: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38573;
  goto ret0;

 L38573: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38574;
  goto ret0;

 L38574: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38575;
  goto ret0;

 L38575: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38576;
  goto ret0;

 L38576: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L38577;
    }
  goto ret0;

 L38577: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38578;
    }
  goto ret0;

 L38578: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3638;  /* sse4_1_sign_extendv4hiv4si2_mask */
    }
  goto ret0;

 L38493: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4QImode:
      goto L60052;
    case V4HImode:
      goto L60053;
    default:
      break;
    }
  goto ret0;

 L60052: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38494;
  goto ret0;

 L38494: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38495;
    }
  goto ret0;

 L38495: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38496;
  goto ret0;

 L38496: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38497;
  goto ret0;

 L38497: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38498;
  goto ret0;

 L38498: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38499;
  goto ret0;

 L38499: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38500;
  goto ret0;

 L38500: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L38501;
    }
  goto ret0;

 L38501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38502;
    }
  goto ret0;

 L38502: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3628;  /* sse4_1_zero_extendv4qiv4si2_mask */
    }
  goto ret0;

 L60053: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38594;
  goto ret0;

 L38594: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L38595;
    }
  goto ret0;

 L38595: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38596;
  goto ret0;

 L38596: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38597;
  goto ret0;

 L38597: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38598;
  goto ret0;

 L38598: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38599;
  goto ret0;

 L38599: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38600;
  goto ret0;

 L38600: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L38601;
    }
  goto ret0;

 L38601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38602;
    }
  goto ret0;

 L38602: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3640;  /* sse4_1_zero_extendv4hiv4si2_mask */
    }
  goto ret0;

 L51288: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L51289;
    }
  goto ret0;

 L51289: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51290;
    }
  goto ret0;

 L51290: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51291;
    }
  goto ret0;

 L51291: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4654;  /* clzv4si2_mask */
    }
  goto ret0;

 L38241: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L38242;
    }
  goto ret0;

 L38242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38243;
    }
  goto ret0;

 L38243: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14197 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3603;  /* avx2_pblenddv4si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_62 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 4:
      goto L60054;
    case 3:
      goto L60055;
    case 2:
      goto L60056;
    case 1:
      goto L60058;
    default:
      break;
    }
  goto ret0;

 L60054: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 159LL:
      goto L24038;
    case 145LL:
      goto L44971;
    default:
      break;
    }
  goto ret0;

 L24038: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L24039;
    }
  goto ret0;

 L24039: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L24040;
    }
  goto ret0;

 L24040: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L24041;
    }
  goto ret0;

 L24041: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24042;
    }
  goto ret0;

 L24042: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2360;  /* avx512vl_vternlogv4si */
    }
  goto ret0;

 L44971: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44972;
    }
  if (GET_CODE (x2) == PC)
    goto L45436;
  goto ret0;

 L44972: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[7] = x2;
      goto L44973;
    }
  goto ret0;

 L44973: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60075;
    case DImode:
      goto L60076;
    default:
      break;
    }
  goto ret0;

 L60075: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44974;
  goto ret0;

 L44974: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L44975;
    }
  goto ret0;

 L44975: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60077;
    case V2DImode:
      goto L60078;
    default:
      break;
    }
  goto ret0;

 L60077: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44976;
    }
  goto ret0;

 L44976: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44977;
    }
  goto ret0;

 L44977: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44978;
  goto ret0;

 L44978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44979;
  goto ret0;

 L44979: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L44980;
    }
  goto ret0;

 L44980: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4337;  /* *avx2_gathersiv4si */
    }
  goto ret0;

 L60078: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45904;
    }
  goto ret0;

 L45904: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45905;
    }
  goto ret0;

 L45905: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45906;
  goto ret0;

 L45906: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45907;
  goto ret0;

 L45907: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L45908;
    }
  goto ret0;

 L45908: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4369;  /* *avx2_gatherdiv4si */
    }
  goto ret0;

 L60076: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45003;
  goto ret0;

 L45003: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L45004;
    }
  goto ret0;

 L45004: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60079;
    case V2DImode:
      goto L60080;
    default:
      break;
    }
  goto ret0;

 L60079: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L45005;
    }
  goto ret0;

 L45005: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45006;
    }
  goto ret0;

 L45006: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45007;
  goto ret0;

 L45007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45008;
  goto ret0;

 L45008: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L45009;
    }
  goto ret0;

 L45009: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4338;  /* *avx2_gathersiv4si */
    }
  goto ret0;

 L60080: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45933;
    }
  goto ret0;

 L45933: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45934;
    }
  goto ret0;

 L45934: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45935;
  goto ret0;

 L45935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45936;
  goto ret0;

 L45936: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[5] = x2;
      goto L45937;
    }
  goto ret0;

 L45937: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4370;  /* *avx2_gatherdiv4si */
    }
  goto ret0;

 L45436: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L45437;
    }
  goto ret0;

 L45437: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60081;
    case DImode:
      goto L60082;
    default:
      break;
    }
  goto ret0;

 L60081: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45438;
  goto ret0;

 L45438: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45439;
    }
  goto ret0;

 L45439: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60083;
    case V2DImode:
      goto L60084;
    default:
      break;
    }
  goto ret0;

 L60083: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45440;
    }
  goto ret0;

 L45440: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45441;
    }
  goto ret0;

 L45441: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45442;
  goto ret0;

 L45442: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45443;
  goto ret0;

 L45443: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L45444;
    }
  goto ret0;

 L45444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4353;  /* *avx2_gathersiv4si_2 */
    }
  goto ret0;

 L60084: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46368;
    }
  goto ret0;

 L46368: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46369;
    }
  goto ret0;

 L46369: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46370;
  goto ret0;

 L46370: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46371;
  goto ret0;

 L46371: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L46372;
    }
  goto ret0;

 L46372: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4385;  /* *avx2_gatherdiv4si_2 */
    }
  goto ret0;

 L60082: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45467;
  goto ret0;

 L45467: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45468;
    }
  goto ret0;

 L45468: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60085;
    case V2DImode:
      goto L60086;
    default:
      break;
    }
  goto ret0;

 L60085: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45469;
    }
  goto ret0;

 L45469: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45470;
    }
  goto ret0;

 L45470: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45471;
  goto ret0;

 L45471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45472;
  goto ret0;

 L45472: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L45473;
    }
  goto ret0;

 L45473: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4354;  /* *avx2_gathersiv4si_2 */
    }
  goto ret0;

 L60086: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46397;
    }
  goto ret0;

 L46397: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46398;
    }
  goto ret0;

 L46398: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46399;
  goto ret0;

 L46399: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46400;
  goto ret0;

 L46400: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L46401;
    }
  goto ret0;

 L46401: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4386;  /* *avx2_gatherdiv4si_2 */
    }
  goto ret0;

 L60055: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 162LL:
      goto L24446;
    case 125LL:
      goto L40935;
    case 147LL:
      goto L42798;
    case 148LL:
      goto L43284;
    case 145LL:
      goto L47313;
    case 164LL:
      goto L50459;
    case 166LL:
      goto L50627;
    case 178LL:
      goto L51430;
    case 181LL:
      goto L51449;
    default:
      break;
    }
  goto ret0;

 L24446: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L24447;
    }
  goto ret0;

 L24447: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L24448;
    }
  goto ret0;

 L24448: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24449;
    }
  goto ret0;

 L24449: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2406;  /* *avx512vl_alignv4si */
    }
  goto ret0;

 L40935: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L40936;
    }
  goto ret0;

 L40936: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L40937;
    }
  goto ret0;

 L40937: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L40938;
    }
  goto ret0;

 L40938: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3852;  /* xop_pcom_tfv4si3 */
    }
  goto ret0;

 L42798: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L42799;
    }
  goto ret0;

 L42799: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L42800;
    }
  goto ret0;

 L42800: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L42801;
    }
  goto ret0;

 L42801: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4103;  /* avx512vl_vpermi2varv4si3 */
    }
  goto ret0;

 L43284: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L43285;
    }
  goto ret0;

 L43285: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L43286;
    }
  goto ret0;

 L43286: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L43287;
    }
  goto ret0;

 L43287: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4157;  /* avx512vl_vpermt2varv4si3 */
    }
  goto ret0;

 L47313: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L47314;
    }
  if (GET_CODE (x2) == PC)
    goto L47914;
  goto ret0;

 L47314: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47315;
    }
  goto ret0;

 L47315: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[6] = x2;
      goto L47316;
    }
  goto ret0;

 L47316: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60087;
    case DImode:
      goto L60088;
    default:
      break;
    }
  goto ret0;

 L60087: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47317;
  goto ret0;

 L47317: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47318;
    }
  goto ret0;

 L47318: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60089;
    case V2DImode:
      goto L60090;
    default:
      break;
    }
  goto ret0;

 L60089: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47319;
    }
  goto ret0;

 L47319: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47320;
    }
  goto ret0;

 L47320: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4417;  /* *avx512f_gathersiv4si */
    }
  goto ret0;

 L60090: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48519;
    }
  goto ret0;

 L48519: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48520;
    }
  goto ret0;

 L48520: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4465;  /* *avx512f_gatherdiv4si */
    }
  goto ret0;

 L60088: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47342;
  goto ret0;

 L47342: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47343;
    }
  goto ret0;

 L47343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60091;
    case V2DImode:
      goto L60092;
    default:
      break;
    }
  goto ret0;

 L60091: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47344;
    }
  goto ret0;

 L47344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47345;
    }
  goto ret0;

 L47345: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4418;  /* *avx512f_gathersiv4si */
    }
  goto ret0;

 L60092: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48544;
    }
  goto ret0;

 L48544: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48545;
    }
  goto ret0;

 L48545: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4466;  /* *avx512f_gatherdiv4si */
    }
  goto ret0;

 L47914: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47915;
    }
  goto ret0;

 L47915: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SImode))
    {
      operands[5] = x2;
      goto L47916;
    }
  goto ret0;

 L47916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60093;
    case DImode:
      goto L60094;
    default:
      break;
    }
  goto ret0;

 L60093: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47917;
  goto ret0;

 L47917: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47918;
    }
  goto ret0;

 L47918: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60095;
    case V2DImode:
      goto L60096;
    default:
      break;
    }
  goto ret0;

 L60095: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47919;
    }
  goto ret0;

 L47919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47920;
    }
  goto ret0;

 L47920: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4441;  /* *avx512f_gathersiv4si_2 */
    }
  goto ret0;

 L60096: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49119;
    }
  goto ret0;

 L49119: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49120;
    }
  goto ret0;

 L49120: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4489;  /* *avx512f_gatherdiv4si_2 */
    }
  goto ret0;

 L60094: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47942;
  goto ret0;

 L47942: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47943;
    }
  goto ret0;

 L47943: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60097;
    case V2DImode:
      goto L60098;
    default:
      break;
    }
  goto ret0;

 L60097: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47944;
    }
  goto ret0;

 L47944: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47945;
    }
  goto ret0;

 L47945: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4442;  /* *avx512f_gathersiv4si_2 */
    }
  goto ret0;

 L60098: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49144;
    }
  goto ret0;

 L49144: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49145;
    }
  goto ret0;

 L49145: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4490;  /* *avx512f_gatherdiv4si_2 */
    }
  goto ret0;

 L50459: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L50460;
    }
  goto ret0;

 L50460: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L50461;
    }
  goto ret0;

 L50461: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50462;
    }
  goto ret0;

 L50462: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4553;  /* avx512vl_compressv4si_mask */
    }
  goto ret0;

 L50627: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L50628;
    }
  goto ret0;

 L50628: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L50629;
    }
  goto ret0;

 L50629: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50630;
    }
  goto ret0;

 L50630: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4577;  /* avx512vl_expandv4si_mask */
    }
  goto ret0;

 L51430: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51431;
    }
  goto ret0;

 L51431: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51432;
    }
  goto ret0;

 L51432: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_3_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51433;
    }
  goto ret0;

 L51433: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18567 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4676;  /* sha1rnds4 */
    }
  goto ret0;

 L51449: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51450;
    }
  goto ret0;

 L51450: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51451;
    }
  goto ret0;

 L51451: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L51452;
    }
  goto ret0;

 L51452: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18602 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4679;  /* sha256rnds2 */
    }
  goto ret0;

 L60056: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 184LL:
      goto L29640;
    case 108LL:
      goto L37731;
    case 42LL:
      goto L44022;
    case 175LL:
      goto L51412;
    case 176LL:
      goto L51418;
    case 177LL:
      goto L51424;
    case 179LL:
      goto L51437;
    case 180LL:
      goto L51443;
    default:
      break;
    }
  goto ret0;

 L29640: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L29641;
    }
  goto ret0;

 L29641: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L29642;
    }
  goto ret0;

 L29642: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9586 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW && 1))
    {
      return 2843;  /* avx512bw_pmaddwd512v8hi */
    }
  goto ret0;

 L37731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L37732;
    }
  goto ret0;

 L37732: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L37733;
    }
  goto ret0;

 L37733: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13755 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3529;  /* ssse3_psignv4si3 */
    }
  goto ret0;

 L44022: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44023;
    }
  goto ret0;

 L44023: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44024;
    }
  goto ret0;

 L44024: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 416 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4231;  /* avx2_maskloadd */
    }
  goto ret0;

 L51412: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51413;
    }
  goto ret0;

 L51413: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51414;
    }
  goto ret0;

 L51414: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18533 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4673;  /* sha1msg1 */
    }
  goto ret0;

 L51418: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51419;
    }
  goto ret0;

 L51419: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51420;
    }
  goto ret0;

 L51420: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4674;  /* sha1msg2 */
    }
  goto ret0;

 L51424: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51425;
    }
  goto ret0;

 L51425: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51426;
    }
  goto ret0;

 L51426: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4675;  /* sha1nexte */
    }
  goto ret0;

 L51437: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51438;
    }
  goto ret0;

 L51438: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51439;
    }
  goto ret0;

 L51439: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18579 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4677;  /* sha256msg1 */
    }
  goto ret0;

 L51443: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51444;
    }
  goto ret0;

 L51444: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L51445;
    }
  goto ret0;

 L51445: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18590 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SHA))
    {
      return 4678;  /* sha256msg2 */
    }
  goto ret0;

 L60058: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 124LL:
      goto L40907;
    case 163LL:
      goto L51360;
    default:
      break;
    }
  goto ret0;

 L40907: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (ix86_comparison_uns_operator (x2, V4SImode))
    {
      operands[1] = x2;
      goto L40908;
    }
  goto ret0;

 L40908: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L40909;
    }
  goto ret0;

 L40909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L40910;
    }
  goto ret0;

 L40910: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16289 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3848;  /* xop_maskcmp_uns2v4si3 */
    }
  goto ret0;

 L51360: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51361;
    }
  goto ret0;

 L51361: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4665;  /* *conflictv4si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_63 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L27813;
    case TRUNCATE:
      goto L27820;
    case US_TRUNCATE:
      goto L27827;
    case VEC_MERGE:
      goto L27864;
    case VEC_CONCAT:
      goto L37101;
    case REG:
    case SUBREG:
      goto L60103;
    default:
      goto ret0;
   }
 L60103: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L35539;
    }
  goto ret0;

 L27813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27814;
    }
  goto ret0;

 L27814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L27815;
    }
  goto ret0;

 L27815: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2665;  /* *avx512vl_ss_truncatev2div2si2 */
    }
  goto ret0;

 L27820: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27821;
    }
  goto ret0;

 L27821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L27822;
    }
  goto ret0;

 L27822: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2666;  /* *avx512vl_truncatev2div2si2 */
    }
  goto ret0;

 L27827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27828;
    }
  goto ret0;

 L27828: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L27829;
    }
  goto ret0;

 L27829: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2667;  /* *avx512vl_us_truncatev2div2si2 */
    }
  goto ret0;

 L27864: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode)
    goto L60105;
  goto ret0;

 L60105: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27865;
    case TRUNCATE:
      goto L27880;
    case US_TRUNCATE:
      goto L27895;
    default:
     break;
   }
  goto ret0;

 L27865: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27866;
    }
  goto ret0;

 L27866: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27867;
  goto ret0;

 L27867: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L27868;
    }
  goto ret0;

 L27868: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27869;
  goto ret0;

 L27869: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27870;
  goto ret0;

 L27870: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27871;
  goto ret0;

 L27871: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27872;
    }
  goto ret0;

 L27872: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L27873;
  goto ret0;

 L27873: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27874;
  goto ret0;

 L27874: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9053 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2671;  /* avx512vl_ss_truncatev2div2si2_mask */
    }
  goto ret0;

 L27880: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27881;
    }
  goto ret0;

 L27881: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27882;
  goto ret0;

 L27882: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L27883;
    }
  goto ret0;

 L27883: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27884;
  goto ret0;

 L27884: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27885;
  goto ret0;

 L27885: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27886;
  goto ret0;

 L27886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27887;
    }
  goto ret0;

 L27887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L27888;
  goto ret0;

 L27888: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27889;
  goto ret0;

 L27889: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9053 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2672;  /* avx512vl_truncatev2div2si2_mask */
    }
  goto ret0;

 L27895: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27896;
    }
  goto ret0;

 L27896: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27897;
  goto ret0;

 L27897: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L27898;
    }
  goto ret0;

 L27898: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27899;
  goto ret0;

 L27899: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27900;
  goto ret0;

 L27900: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27901;
  goto ret0;

 L27901: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L27902;
    }
  goto ret0;

 L27902: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L27903;
  goto ret0;

 L27903: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27904;
  goto ret0;

 L27904: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 9053 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2673;  /* avx512vl_us_truncatev2div2si2_mask */
    }
  goto ret0;

 L37101: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L60108;
  goto ret0;

 L60108: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L37102;
    case MINUS:
      goto L37143;
    default:
     break;
   }
  goto ret0;

 L37102: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37103;
  goto ret0;

 L37103: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SImode))
    {
      operands[1] = x5;
      goto L37104;
    }
  goto ret0;

 L37104: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37105;
  goto ret0;

 L37105: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37106;
  goto ret0;

 L37106: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37107;
  goto ret0;

 L37107: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37108;
  goto ret0;

 L37108: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37109;
  goto ret0;

 L37109: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37110;
  goto ret0;

 L37110: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L37111;
  goto ret0;

 L37111: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37112;
  goto ret0;

 L37112: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37113;
  goto ret0;

 L37113: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37114;
  goto ret0;

 L37114: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37115;
  goto ret0;

 L37115: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37116;
  goto ret0;

 L37116: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37117;
  goto ret0;

 L37117: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37118;
  goto ret0;

 L37118: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37119;
  goto ret0;

 L37119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L37120;
  goto ret0;

 L37120: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L37121;
  goto ret0;

 L37121: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37122;
  goto ret0;

 L37122: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L37123;
    }
  goto ret0;

 L37123: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37124;
  goto ret0;

 L37124: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37125;
  goto ret0;

 L37125: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37126;
  goto ret0;

 L37126: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37127;
  goto ret0;

 L37127: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37128;
  goto ret0;

 L37128: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37129;
  goto ret0;

 L37129: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L37130;
  goto ret0;

 L37130: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37131;
  goto ret0;

 L37131: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37132;
  goto ret0;

 L37132: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37133;
  goto ret0;

 L37133: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37134;
  goto ret0;

 L37134: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37135;
  goto ret0;

 L37135: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37136;
  goto ret0;

 L37136: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37137;
  goto ret0;

 L37137: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 13416 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3495;  /* ssse3_phadddv4si3 */
    }
  goto ret0;

 L37143: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37144;
  goto ret0;

 L37144: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SImode))
    {
      operands[1] = x5;
      goto L37145;
    }
  goto ret0;

 L37145: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37146;
  goto ret0;

 L37146: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37147;
  goto ret0;

 L37147: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37148;
  goto ret0;

 L37148: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37149;
  goto ret0;

 L37149: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37150;
  goto ret0;

 L37150: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37151;
  goto ret0;

 L37151: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == MINUS)
    goto L37152;
  goto ret0;

 L37152: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37153;
  goto ret0;

 L37153: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37154;
  goto ret0;

 L37154: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37155;
  goto ret0;

 L37155: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37156;
  goto ret0;

 L37156: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37157;
  goto ret0;

 L37157: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L37158;
  goto ret0;

 L37158: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37159;
  goto ret0;

 L37159: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L37160;
  goto ret0;

 L37160: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L37161;
  goto ret0;

 L37161: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == MINUS)
    goto L37162;
  goto ret0;

 L37162: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37163;
  goto ret0;

 L37163: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L37164;
    }
  goto ret0;

 L37164: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37165;
  goto ret0;

 L37165: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L37166;
  goto ret0;

 L37166: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37167;
  goto ret0;

 L37167: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37168;
  goto ret0;

 L37168: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37169;
  goto ret0;

 L37169: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L37170;
  goto ret0;

 L37170: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == MINUS)
    goto L37171;
  goto ret0;

 L37171: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37172;
  goto ret0;

 L37172: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37173;
  goto ret0;

 L37173: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37174;
  goto ret0;

 L37174: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L37175;
  goto ret0;

 L37175: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L37176;
  goto ret0;

 L37176: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L37177;
  goto ret0;

 L37177: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L37178;
  goto ret0;

 L37178: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 13416 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3496;  /* ssse3_phsubdv4si3 */
    }
  goto ret0;

 L35539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[2] = x2;
      goto L35540;
    }
  goto ret0;

 L35540: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12926 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3450;  /* *vec_concatv4si */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_64 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case MULT:
      goto L39938;
    case SIGN_EXTEND:
      goto L40184;
    case ZERO_EXTEND:
      goto L40221;
    default:
     break;
   }
  goto ret0;

 L39938: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39939;
  goto ret0;

 L39939: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39940;
  goto ret0;

 L39940: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L39941;
    }
  goto ret0;

 L39941: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39942;
  goto ret0;

 L39942: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L39943;
  goto ret0;

 L39943: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39944;
  goto ret0;

 L39944: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L39945;
  goto ret0;

 L39945: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L39946;
  goto ret0;

 L39946: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39947;
  goto ret0;

 L39947: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39948;
  goto ret0;

 L39948: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L39949;
    }
  goto ret0;

 L39949: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39950;
  goto ret0;

 L39950: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L39951;
  goto ret0;

 L39951: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39952;
  goto ret0;

 L39952: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L39953;
  goto ret0;

 L39953: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L39954;
  goto ret0;

 L39954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == MULT)
    goto L39955;
  goto ret0;

 L39955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39956;
  goto ret0;

 L39956: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39957;
  goto ret0;

 L39957: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L39958;
  goto ret0;

 L39958: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39959;
  goto ret0;

 L39959: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39960;
  goto ret0;

 L39960: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39961;
  goto ret0;

 L39961: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L39962;
  goto ret0;

 L39962: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L39963;
  goto ret0;

 L39963: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39964;
  goto ret0;

 L39964: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39965;
  goto ret0;

 L39965: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L39966;
  goto ret0;

 L39966: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39967;
  goto ret0;

 L39967: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39968;
  goto ret0;

 L39968: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39969;
  goto ret0;

 L39969: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L39970;
  goto ret0;

 L39970: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L39971;
  goto ret0;

 L39971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L39972;
    }
  goto ret0;

 L39972: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15543 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3773;  /* xop_pmadcswd */
    }
  goto ret0;

 L40184: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40185;
  goto ret0;

 L40185: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16QImode))
    {
      operands[1] = x5;
      goto L40186;
    }
  goto ret0;

 L40186: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40187;
  goto ret0;

 L40187: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40188;
  goto ret0;

 L40188: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40189;
  goto ret0;

 L40189: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40190;
  goto ret0;

 L40190: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40191;
  goto ret0;

 L40191: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L40192;
  goto ret0;

 L40192: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40193;
  goto ret0;

 L40193: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40194;
  goto ret0;

 L40194: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40195;
  goto ret0;

 L40195: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40196;
  goto ret0;

 L40196: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40197;
  goto ret0;

 L40197: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40198;
  goto ret0;

 L40198: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40199;
  goto ret0;

 L40199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == PLUS)
    goto L40200;
  goto ret0;

 L40200: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L40201;
  goto ret0;

 L40201: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40202;
  goto ret0;

 L40202: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40203;
  goto ret0;

 L40203: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40204;
  goto ret0;

 L40204: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40205;
  goto ret0;

 L40205: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40206;
  goto ret0;

 L40206: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40207;
  goto ret0;

 L40207: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40208;
  goto ret0;

 L40208: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L40209;
  goto ret0;

 L40209: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40210;
  goto ret0;

 L40210: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40211;
  goto ret0;

 L40211: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40212;
  goto ret0;

 L40212: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40213;
  goto ret0;

 L40213: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40214;
  goto ret0;

 L40214: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40215;
  goto ret0;

 L40215: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15606 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3793;  /* xop_phaddbd */
    }
  goto ret0;

 L40221: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40222;
  goto ret0;

 L40222: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16QImode))
    {
      operands[1] = x5;
      goto L40223;
    }
  goto ret0;

 L40223: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40224;
  goto ret0;

 L40224: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40225;
  goto ret0;

 L40225: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40226;
  goto ret0;

 L40226: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40227;
  goto ret0;

 L40227: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40228;
  goto ret0;

 L40228: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L40229;
  goto ret0;

 L40229: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40230;
  goto ret0;

 L40230: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40231;
  goto ret0;

 L40231: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40232;
  goto ret0;

 L40232: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40233;
  goto ret0;

 L40233: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40234;
  goto ret0;

 L40234: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40235;
  goto ret0;

 L40235: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40236;
  goto ret0;

 L40236: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == PLUS)
    goto L40237;
  goto ret0;

 L40237: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L40238;
  goto ret0;

 L40238: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40239;
  goto ret0;

 L40239: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40240;
  goto ret0;

 L40240: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40241;
  goto ret0;

 L40241: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40242;
  goto ret0;

 L40242: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40243;
  goto ret0;

 L40243: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40244;
  goto ret0;

 L40244: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40245;
  goto ret0;

 L40245: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L40246;
  goto ret0;

 L40246: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4QImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40247;
  goto ret0;

 L40247: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40248;
  goto ret0;

 L40248: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L40249;
  goto ret0;

 L40249: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40250;
  goto ret0;

 L40250: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40251;
  goto ret0;

 L40251: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40252;
  goto ret0;

 L40252: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15606 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3794;  /* xop_phaddubd */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_65 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22877;
    case UNSPEC:
      goto L59967;
    case VEC_CONCAT:
      goto L27812;
    case PLUS:
      goto L28457;
    case MINUS:
      goto L28472;
    case MULT:
      goto L29820;
    case ASHIFTRT:
      goto L29853;
    case ASHIFT:
      goto L30114;
    case LSHIFTRT:
      goto L30129;
    case ROTATE:
      goto L30360;
    case ROTATERT:
      goto L30375;
    case SMAX:
      goto L30852;
    case SMIN:
      goto L30867;
    case UMAX:
      goto L30882;
    case UMIN:
      goto L30897;
    case EQ:
      goto L31806;
    case GT:
      goto L32022;
    case AND:
      goto L32181;
    case IOR:
      goto L32772;
    case XOR:
      goto L32787;
    case VEC_SELECT:
      goto L34371;
    case ABS:
      goto L37853;
    case SIGN_EXTEND:
      goto L38458;
    case ZERO_EXTEND:
      goto L38482;
    case SS_PLUS:
      goto L39812;
    case IF_THEN_ELSE:
      goto L40058;
    case VEC_DUPLICATE:
      goto L41091;
    case CLZ:
      goto L51282;
    default:
     break;
   }
 L59946: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_int_operator (x1, V4SImode))
    {
      operands[1] = x1;
      goto L40857;
    }
 L59947: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_uns_operator (x1, V4SImode))
    {
      operands[1] = x1;
      goto L40881;
    }
  goto ret0;

 L22877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L59988;
  goto ret0;

 L59988: ATTRIBUTE_UNUSED_LABEL
  return recog_61 (x0, insn, pnum_clobbers);

 L59967: ATTRIBUTE_UNUSED_LABEL
  return recog_62 (x0, insn, pnum_clobbers);

 L27812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SImode)
    goto L60099;
  goto ret0;

 L60099: ATTRIBUTE_UNUSED_LABEL
  return recog_63 (x0, insn, pnum_clobbers);

 L28457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60111;
  goto ret0;

 L60111: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case MULT:
      goto L29709;
    case PLUS:
      goto L39937;
    case SIGN_EXTEND:
      goto L40371;
    case ZERO_EXTEND:
      goto L40390;
    case REG:
    case SUBREG:
    case MEM:
      goto L60110;
    default:
      goto ret0;
   }
 L60110: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L28458;
    }
  goto ret0;

 L29709: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60115;
  goto ret0;

 L60115: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == SIGN_EXTEND)
    goto L29710;
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L39806;
    }
  goto ret0;

 L29710: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29711;
  goto ret0;

 L29711: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[1] = x5;
      goto L29712;
    }
  goto ret0;

 L29712: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29713;
  goto ret0;

 L29713: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (GET_CODE (x6) == CONST_INT)
    goto L60117;
  goto ret0;

 L60117: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x6, 0) == XWINT (x6, 0))
    switch ((int) XWINT (x6, 0))
      {
      case 0LL:
        goto L29714;
      case 1LL:
        goto L39898;
      default:
        break;
      }
  goto ret0;

 L29714: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29715;
  goto ret0;

 L29715: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29716;
  goto ret0;

 L29716: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29717;
  goto ret0;

 L29717: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29718;
  goto ret0;

 L29718: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29719;
  goto ret0;

 L29719: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[2] = x5;
      goto L29720;
    }
  goto ret0;

 L29720: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29721;
  goto ret0;

 L29721: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29722;
  goto ret0;

 L29722: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29723;
  goto ret0;

 L29723: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29724;
  goto ret0;

 L29724: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29725;
  goto ret0;

 L29725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == MULT)
    goto L29726;
  goto ret0;

 L29726: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29727;
  goto ret0;

 L29727: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29728;
  goto ret0;

 L29728: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L29729;
  goto ret0;

 L29729: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29730;
  goto ret0;

 L29730: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L29731;
  goto ret0;

 L29731: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L29732;
  goto ret0;

 L29732: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L29733;
  goto ret0;

 L29733: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L29734;
  goto ret0;

 L29734: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29735;
  goto ret0;

 L29735: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29736;
  goto ret0;

 L29736: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L29737;
  goto ret0;

 L29737: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29738;
  goto ret0;

 L29738: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L29739;
  goto ret0;

 L29739: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L29740;
  goto ret0;

 L29740: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L29741;
  goto ret0;

 L29741: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 9712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_binary_operator_ok (MULT, V8HImode, operands)))
    {
      return 2846;  /* *sse2_pmaddwd */
    }
  goto ret0;

 L39898: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39899;
  goto ret0;

 L39899: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L39900;
  goto ret0;

 L39900: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L39901;
  goto ret0;

 L39901: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39902;
  goto ret0;

 L39902: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39903;
  goto ret0;

 L39903: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[2] = x5;
      goto L39904;
    }
  goto ret0;

 L39904: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L39905;
  goto ret0;

 L39905: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39906;
  goto ret0;

 L39906: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39907;
  goto ret0;

 L39907: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L39908;
  goto ret0;

 L39908: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L39909;
  goto ret0;

 L39909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L39910;
    }
  goto ret0;

 L39910: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3771;  /* xop_pmacswd */
    }
  goto ret0;

 L39806: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L39807;
    }
  goto ret0;

 L39807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L39808;
    }
  goto ret0;

 L39808: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15454 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3765;  /* xop_pmacsdd */
    }
  goto ret0;

 L39937: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60119;
  goto ret0;

 L60119: ATTRIBUTE_UNUSED_LABEL
  return recog_64 (x0, insn, pnum_clobbers);

 L40371: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40372;
  goto ret0;

 L40372: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L40373;
    }
  goto ret0;

 L40373: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L40374;
  goto ret0;

 L40374: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40375;
  goto ret0;

 L40375: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40376;
  goto ret0;

 L40376: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40377;
  goto ret0;

 L40377: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40378;
  goto ret0;

 L40378: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L40379;
  goto ret0;

 L40379: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40380;
  goto ret0;

 L40380: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40381;
  goto ret0;

 L40381: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L40382;
  goto ret0;

 L40382: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40383;
  goto ret0;

 L40383: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40384;
  goto ret0;

 L40384: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40385;
  goto ret0;

 L40385: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 15668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3797;  /* xop_phaddwd */
    }
  goto ret0;

 L40390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40391;
  goto ret0;

 L40391: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L40392;
    }
  goto ret0;

 L40392: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L40393;
  goto ret0;

 L40393: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40394;
  goto ret0;

 L40394: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40395;
  goto ret0;

 L40395: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40396;
  goto ret0;

 L40396: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40397;
  goto ret0;

 L40397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L40398;
  goto ret0;

 L40398: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40399;
  goto ret0;

 L40399: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40400;
  goto ret0;

 L40400: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L40401;
  goto ret0;

 L40401: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40402;
  goto ret0;

 L40402: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40403;
  goto ret0;

 L40403: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40404;
  goto ret0;

 L40404: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 15668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3798;  /* xop_phadduwd */
    }
  goto ret0;

 L28458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L28459;
    }
  goto ret0;

 L28459: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V4SImode, operands)))
    {
      return 2721;  /* *addv4si3 */
    }
  goto ret0;

 L28472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60123;
  goto ret0;

 L60123: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == SIGN_EXTEND)
    goto L40524;
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L28473;
    }
  goto ret0;

 L40524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40525;
  goto ret0;

 L40525: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L40526;
    }
  goto ret0;

 L40526: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L40527;
  goto ret0;

 L40527: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40528;
  goto ret0;

 L40528: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40529;
  goto ret0;

 L40529: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40530;
  goto ret0;

 L40530: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40531;
  goto ret0;

 L40531: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L40532;
  goto ret0;

 L40532: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40533;
  goto ret0;

 L40533: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40534;
  goto ret0;

 L40534: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L40535;
  goto ret0;

 L40535: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40536;
  goto ret0;

 L40536: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40537;
  goto ret0;

 L40537: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40538;
  goto ret0;

 L40538: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 15746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3804;  /* xop_phsubwd */
    }
  goto ret0;

 L28473: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L28474;
    }
  goto ret0;

 L28474: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V4SImode, operands)))
    {
      return 2723;  /* *subv4si3 */
    }
  goto ret0;

 L29820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L29821;
    }
  goto ret0;

 L29821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L29822;
    }
  goto ret0;

 L29822: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V4SImode, operands) && 1))
    {
      return 2857;  /* *sse4_1_mulv4si3 */
    }
  goto ret0;

 L29853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60124;
  goto ret0;

 L60124: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44110;
    }
 L60125: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L29905;
    }
  goto ret0;

 L44110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44111;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29855;
    }
  x2 = XEXP (x1, 0);
  goto L60125;

 L44111: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4246;  /* avx2_ashrvv4si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60125;

 L29855: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9901 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2862;  /* ashrv4si3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60125;

 L29905: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29906;
    }
  goto ret0;

 L29906: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9920 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2869;  /* *ashrv4si3 */
    }
  goto ret0;

 L30114: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44305;
    }
  goto ret0;

 L44305: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44306;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30116;
    }
  goto ret0;

 L44306: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4272;  /* avx2_ashlvv4si */
    }
  goto ret0;

 L30116: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2897;  /* ashlv4si3 */
    }
  goto ret0;

 L30129: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44320;
    }
  goto ret0;

 L44320: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44321;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30131;
    }
  goto ret0;

 L44321: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4274;  /* avx2_lshrvv4si */
    }
  goto ret0;

 L30131: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2899;  /* lshrv4si3 */
    }
  goto ret0;

 L30360: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60126;
  goto ret0;

 L60126: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30361;
    }
 L60127: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30541;
    }
  goto ret0;

 L30361: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L30362;
    }
  x2 = XEXP (x1, 0);
  goto L60127;

 L30362: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2931;  /* avx512vl_rolvv4si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60127;

 L30541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L60128;
  goto ret0;

 L60128: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30542;
    }
 L60129: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40611;
    }
  goto ret0;

 L30542: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2955;  /* avx512vl_rolv4si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L60129;

 L40611: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15888 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3812;  /* xop_rotlv4si3 */
    }
  goto ret0;

 L30375: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60130;
  goto ret0;

 L60130: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30376;
    }
 L60131: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30556;
    }
  goto ret0;

 L30376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L30377;
    }
  x2 = XEXP (x1, 0);
  goto L60131;

 L30377: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2933;  /* avx512vl_rorvv4si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60131;

 L30556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L60132;
  goto ret0;

 L60132: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30557;
    }
 L60133: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40635;
    }
  goto ret0;

 L30557: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2957;  /* avx512vl_rorv4si */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L60133;

 L40635: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15899 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3816;  /* xop_rotrv4si3 */
    }
  goto ret0;

 L30852: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30853;
    }
  goto ret0;

 L30853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L30854;
    }
  goto ret0;

 L30854: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2999;  /* *avx512bw_smaxv4si3 */
    }
 L31484: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (SMAX, V4SImode, operands)))
    {
      return 3083;  /* *sse4_1_smaxv4si3 */
    }
  goto ret0;

 L30867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30868;
    }
  goto ret0;

 L30868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L30869;
    }
  goto ret0;

 L30869: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3001;  /* *avx512bw_sminv4si3 */
    }
 L31499: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (SMIN, V4SImode, operands)))
    {
      return 3085;  /* *sse4_1_sminv4si3 */
    }
  goto ret0;

 L30882: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30883;
    }
  goto ret0;

 L30883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L30884;
    }
  goto ret0;

 L30884: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3003;  /* *avx512bw_umaxv4si3 */
    }
 L31556: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (UMAX, V4SImode, operands)))
    {
      return 3093;  /* *sse4_1_umaxv4si3 */
    }
  goto ret0;

 L30897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L30898;
    }
  goto ret0;

 L30898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L30899;
    }
  goto ret0;

 L30899: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3005;  /* *avx512bw_uminv4si3 */
    }
 L31571: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10335 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && 1
   && ix86_binary_operator_ok (UMIN, V4SImode, operands)))
    {
      return 3095;  /* *sse4_1_uminv4si3 */
    }
  goto ret0;

 L31806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L31807;
    }
  goto L59946;

 L31807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L31808;
    }
  goto L59946;

 L31808: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_XOP
   && ix86_binary_operator_ok (EQ, V4SImode, operands)))
    {
      return 3130;  /* *sse2_eqv4si3 */
    }
  x1 = XEXP (x0, 1);
  goto L59946;

 L32022: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L32023;
    }
  goto L59946;

 L32023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L32024;
    }
  goto L59946;

 L32024: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_XOP))
    {
      return 3162;  /* sse2_gtv4si3 */
    }
  x1 = XEXP (x0, 1);
  goto L59946;

 L32181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60134;
  goto ret0;

 L60134: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32182;
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L32758;
    }
  goto ret0;

 L32182: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L32183;
    }
  goto ret0;

 L32183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L32184;
    }
  goto ret0;

 L32184: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3181;  /* *andnotv4si3 */
    }
  goto ret0;

 L32758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L32759;
    }
  goto ret0;

 L32759: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V4SImode, operands)))
    {
      return 3253;  /* *andv4si3 */
    }
  goto ret0;

 L32772: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L32773;
    }
  goto ret0;

 L32773: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L32774;
    }
  goto ret0;

 L32774: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V4SImode, operands)))
    {
      return 3255;  /* *iorv4si3 */
    }
  goto ret0;

 L32787: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L32788;
    }
  goto ret0;

 L32788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L32789;
    }
  goto ret0;

 L32789: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V4SImode, operands)))
    {
      return 3257;  /* *xorv4si3 */
    }
  goto ret0;

 L34371: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L60136;
    case V4SImode:
      goto L60137;
    default:
      break;
    }
  goto ret0;

 L60136: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_CONCAT:
      goto L34372;
    case UNSPEC:
      goto L60140;
    default:
     break;
   }
  goto ret0;

 L34372: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L34373;
    }
  goto ret0;

 L34373: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L34374;
    }
  goto ret0;

 L34374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L34375;
  goto ret0;

 L34375: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L60141;
  goto ret0;

 L60141: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L34376;
      case 0LL:
        goto L34486;
      default:
        break;
      }
  goto ret0;

 L34376: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34377;
  goto ret0;

 L34377: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34378;
  goto ret0;

 L34378: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 11497 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 3365;  /* vec_interleave_highv4si */
    }
  goto ret0;

 L34486: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34487;
  goto ret0;

 L34487: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34488;
  goto ret0;

 L34488: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)]
      && 
#line 11551 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 3371;  /* vec_interleave_lowv4si */
    }
  goto ret0;

 L60140: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 145)
    goto L46602;
  goto ret0;

 L46602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L46603;
    }
  if (GET_CODE (x3) == PC)
    goto L46763;
  goto ret0;

 L46603: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[7] = x3;
      goto L46604;
    }
  goto ret0;

 L46604: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L60143;
    case DImode:
      goto L60144;
    default:
      break;
    }
  goto ret0;

 L60143: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46605;
  goto ret0;

 L46605: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L46606;
    }
  goto ret0;

 L46606: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46607;
    }
  goto ret0;

 L46607: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46608;
    }
  goto ret0;

 L46608: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46609;
  goto ret0;

 L46609: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46610;
  goto ret0;

 L46610: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L46611;
    }
  goto ret0;

 L46611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46612;
  goto ret0;

 L46612: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46613;
  goto ret0;

 L46613: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46614;
  goto ret0;

 L46614: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46615;
  goto ret0;

 L46615: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4393;  /* *avx2_gatherdiv8si_3 */
    }
  goto ret0;

 L60144: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46645;
  goto ret0;

 L46645: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L46646;
    }
  goto ret0;

 L46646: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46647;
    }
  goto ret0;

 L46647: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46648;
    }
  goto ret0;

 L46648: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46649;
  goto ret0;

 L46649: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46650;
  goto ret0;

 L46650: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L46651;
    }
  goto ret0;

 L46651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46652;
  goto ret0;

 L46652: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46653;
  goto ret0;

 L46653: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46654;
  goto ret0;

 L46654: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46655;
  goto ret0;

 L46655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4394;  /* *avx2_gatherdiv8si_3 */
    }
  goto ret0;

 L46763: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L46764;
    }
  goto ret0;

 L46764: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L60145;
    case DImode:
      goto L60146;
    default:
      break;
    }
  goto ret0;

 L60145: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46765;
  goto ret0;

 L46765: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L46766;
    }
  goto ret0;

 L46766: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46767;
    }
  goto ret0;

 L46767: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46768;
    }
  goto ret0;

 L46768: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46769;
  goto ret0;

 L46769: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46770;
  goto ret0;

 L46770: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L46771;
    }
  goto ret0;

 L46771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46772;
  goto ret0;

 L46772: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46773;
  goto ret0;

 L46773: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46774;
  goto ret0;

 L46774: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46775;
  goto ret0;

 L46775: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4397;  /* *avx2_gatherdiv8si_4 */
    }
  goto ret0;

 L60146: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46805;
  goto ret0;

 L46805: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L46806;
    }
  goto ret0;

 L46806: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46807;
    }
  goto ret0;

 L46807: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46808;
    }
  goto ret0;

 L46808: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46809;
  goto ret0;

 L46809: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46810;
  goto ret0;

 L46810: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L46811;
    }
  goto ret0;

 L46811: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46812;
  goto ret0;

 L46812: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46813;
  goto ret0;

 L46813: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46814;
  goto ret0;

 L46814: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46815;
  goto ret0;

 L46815: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4398;  /* *avx2_gatherdiv8si_4 */
    }
  goto ret0;

 L60137: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L35230;
    }
 L60138: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L43697;
    }
  goto ret0;

 L35230: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L35231;
  x2 = XEXP (x1, 0);
  goto L60138;

 L35231: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35232;
    }
  x2 = XEXP (x1, 0);
  goto L60138;

 L35232: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35233;
    }
  x2 = XEXP (x1, 0);
  goto L60138;

 L35233: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35234;
    }
  x2 = XEXP (x1, 0);
  goto L60138;

 L35234: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35235;
    }
  x2 = XEXP (x1, 0);
  goto L60138;

 L35235: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12236 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 3421;  /* sse2_pshufd_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60138;

 L43697: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && palignr_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L43698;
    }
  goto ret0;

 L43698: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L43699;
    }
  goto ret0;

 L43699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17444 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 4203;  /* *ssse3_palignrv4si_perm */
    }
  goto ret0;

 L37853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L37854;
    }
  goto ret0;

 L37854: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3548;  /* *absv4si2 */
    }
  goto ret0;

 L38458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4QImode:
      goto L60147;
    case V4HImode:
      goto L60148;
    default:
      break;
    }
  goto ret0;

 L60147: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38459;
  goto ret0;

 L38459: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38460;
    }
  goto ret0;

 L38460: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38461;
  goto ret0;

 L38461: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38462;
  goto ret0;

 L38462: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38463;
  goto ret0;

 L38463: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38464;
  goto ret0;

 L38464: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3625;  /* sse4_1_sign_extendv4qiv4si2 */
    }
  goto ret0;

 L60148: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38559;
  goto ret0;

 L38559: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38560;
    }
  goto ret0;

 L38560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38561;
  goto ret0;

 L38561: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38562;
  goto ret0;

 L38562: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38563;
  goto ret0;

 L38563: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38564;
  goto ret0;

 L38564: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3637;  /* sse4_1_sign_extendv4hiv4si2 */
    }
  goto ret0;

 L38482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4QImode:
      goto L60149;
    case V4HImode:
      goto L60150;
    default:
      break;
    }
  goto ret0;

 L60149: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38483;
  goto ret0;

 L38483: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38484;
    }
  goto ret0;

 L38484: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38485;
  goto ret0;

 L38485: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38486;
  goto ret0;

 L38486: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38487;
  goto ret0;

 L38487: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38488;
  goto ret0;

 L38488: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3627;  /* sse4_1_zero_extendv4qiv4si2 */
    }
  goto ret0;

 L60150: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38583;
  goto ret0;

 L38583: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38584;
    }
  goto ret0;

 L38584: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38585;
  goto ret0;

 L38585: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38586;
  goto ret0;

 L38586: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38587;
  goto ret0;

 L38587: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38588;
  goto ret0;

 L38588: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3639;  /* sse4_1_zero_extendv4hiv4si2 */
    }
  goto ret0;

 L39812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60151;
  goto ret0;

 L60151: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case MULT:
      goto L39813;
    case PLUS:
      goto L39977;
    default:
     break;
   }
  goto ret0;

 L39813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode)
    goto L60154;
  goto ret0;

 L60154: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == SIGN_EXTEND)
    goto L39916;
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L39814;
    }
  goto ret0;

 L39916: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39917;
  goto ret0;

 L39917: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[1] = x5;
      goto L39918;
    }
  goto ret0;

 L39918: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L39919;
  goto ret0;

 L39919: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39920;
  goto ret0;

 L39920: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39921;
  goto ret0;

 L39921: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L39922;
  goto ret0;

 L39922: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L39923;
  goto ret0;

 L39923: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39924;
  goto ret0;

 L39924: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39925;
  goto ret0;

 L39925: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[2] = x5;
      goto L39926;
    }
  goto ret0;

 L39926: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L39927;
  goto ret0;

 L39927: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39928;
  goto ret0;

 L39928: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39929;
  goto ret0;

 L39929: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L39930;
  goto ret0;

 L39930: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L39931;
  goto ret0;

 L39931: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L39932;
    }
  goto ret0;

 L39932: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3772;  /* xop_pmacsswd */
    }
  goto ret0;

 L39814: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L39815;
    }
  goto ret0;

 L39815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L39816;
    }
  goto ret0;

 L39816: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15454 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3766;  /* xop_pmacssdd */
    }
  goto ret0;

 L39977: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == MULT)
    goto L39978;
  goto ret0;

 L39978: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39979;
  goto ret0;

 L39979: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39980;
  goto ret0;

 L39980: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[1] = x6;
      goto L39981;
    }
  goto ret0;

 L39981: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39982;
  goto ret0;

 L39982: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L39983;
  goto ret0;

 L39983: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39984;
  goto ret0;

 L39984: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L39985;
  goto ret0;

 L39985: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L39986;
  goto ret0;

 L39986: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39987;
  goto ret0;

 L39987: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39988;
  goto ret0;

 L39988: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8HImode))
    {
      operands[2] = x6;
      goto L39989;
    }
  goto ret0;

 L39989: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39990;
  goto ret0;

 L39990: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L39991;
  goto ret0;

 L39991: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39992;
  goto ret0;

 L39992: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L39993;
  goto ret0;

 L39993: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L39994;
  goto ret0;

 L39994: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == MULT)
    goto L39995;
  goto ret0;

 L39995: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L39996;
  goto ret0;

 L39996: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L39997;
  goto ret0;

 L39997: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L39998;
  goto ret0;

 L39998: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L39999;
  goto ret0;

 L39999: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40000;
  goto ret0;

 L40000: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40001;
  goto ret0;

 L40001: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40002;
  goto ret0;

 L40002: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40003;
  goto ret0;

 L40003: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40004;
  goto ret0;

 L40004: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4HImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40005;
  goto ret0;

 L40005: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L40006;
  goto ret0;

 L40006: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 4)
    goto L40007;
  goto ret0;

 L40007: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40008;
  goto ret0;

 L40008: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40009;
  goto ret0;

 L40009: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 2);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40010;
  goto ret0;

 L40010: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 3);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40011;
  goto ret0;

 L40011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L40012;
    }
  goto ret0;

 L40012: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15543 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3774;  /* xop_pmadcsswd */
    }
  goto ret0;

 L40058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L60156;
  goto ret0;

 L60156: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == GE)
    goto L40672;
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L40059;
    }
  goto ret0;

 L40672: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L40673;
    }
  goto ret0;

 L40673: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40674;
  goto ret0;

 L40674: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode)
    goto L60157;
  goto ret0;

 L60157: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ROTATE:
      goto L40675;
    case ASHIFT:
      goto L40727;
    default:
     break;
   }
  goto ret0;

 L40675: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L40676;
    }
  goto ret0;

 L40676: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40677;
  goto ret0;

 L40677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == ROTATERT)
    goto L40678;
  goto ret0;

 L40678: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40679;
  goto ret0;

 L40679: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == NEG)
    goto L40680;
  goto ret0;

 L40680: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 15943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3820;  /* xop_vrotlv4si3 */
    }
  goto ret0;

 L40727: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L40728;
    }
  goto ret0;

 L40728: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40729;
  goto ret0;

 L40729: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V4SImode)
    goto L60159;
  goto ret0;

 L60159: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFTRT:
      goto L40730;
    case LSHIFTRT:
      goto L40782;
    default:
     break;
   }
  goto ret0;

 L40730: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40731;
  goto ret0;

 L40731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == NEG)
    goto L40732;
  goto ret0;

 L40732: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16118 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3824;  /* xop_shav4si3 */
    }
  goto ret0;

 L40782: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40783;
  goto ret0;

 L40783: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == NEG)
    goto L40784;
  goto ret0;

 L40784: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16137 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3828;  /* xop_shlv4si3 */
    }
  goto ret0;

 L40059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L40060;
    }
  goto ret0;

 L40060: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L40061;
    }
  goto ret0;

 L40061: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3781;  /* xop_pcmov_v4si */
    }
  goto ret0;

 L41091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L60161;
    case V2SImode:
      goto L60163;
    default:
      break;
    }
  goto ret0;

 L60161: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L41092;
    case ZERO_EXTEND:
      goto L42444;
    case REG:
    case SUBREG:
    case MEM:
      goto L60162;
    default:
      goto ret0;
   }
 L60162: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L41965;
    }
  goto ret0;

 L41092: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L41093;
    }
  goto ret0;

 L41093: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41094;
  goto ret0;

 L41094: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60165;
  goto ret0;

 L60165: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L60167;
  goto ret0;

 L60167: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3876;  /* avx2_pbroadcastv4si */
    }
 L60168: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3929;  /* avx512vl_vec_dupv4si */
    }
  goto ret0;

 L42444: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L42445;
    }
  goto ret0;

 L42445: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4059;  /* avx512cd_maskw_vec_dupv4si */
    }
  goto ret0;

 L41965: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3985;  /* *avx512vl_vec_dup_gprv4si */
    }
 L42100: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16736 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 4006;  /* *vec_dupv4si */
    }
 L42155: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16786 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4017;  /* *vec_dupv4si */
    }
  goto ret0;

 L60163: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L42250;
  goto ret0;

 L42250: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L42251;
    }
  goto ret0;

 L42251: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L42252;
  goto ret0;

 L42252: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42253;
  goto ret0;

 L42253: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16864 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4032;  /* *avx512dq_broadcastv4si */
    }
  goto ret0;

 L51282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51283;
    }
  goto ret0;

 L51283: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4653;  /* clzv4si2 */
    }
  goto ret0;

 L40857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L40858;
    }
  goto L59947;

 L40858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L40859;
    }
  goto L59947;

 L40859: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16256 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3840;  /* xop_maskcmpv4si3 */
    }
  x1 = XEXP (x0, 1);
  goto L59947;

 L40881: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L40882;
    }
  goto ret0;

 L40882: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L40883;
    }
  goto ret0;

 L40883: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3844;  /* xop_maskcmp_unsv4si3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_66 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V4SImode))
    {
      operands[5] = x1;
      goto L49679;
    }
 L57058: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L22708;
    }
 L57073: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L11570;
    }
 L57091: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L11822;
    }
 L57119: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L22876;
    }
 L57124: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L23299;
    }
  goto ret0;

 L49679: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L59830;
    case DImode:
      goto L59831;
    default:
      break;
    }
  goto L57058;

 L59830: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49680;
  goto L57058;

 L49680: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49681;
    }
  goto L57058;

 L49681: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L59832;
    case V2DImode:
      goto L59833;
    default:
      break;
    }
  goto L57058;

 L59832: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49682;
    }
  goto L57058;

 L49682: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49683;
    }
  goto L57058;

 L49683: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49684;
  x1 = XEXP (x0, 0);
  goto L57058;

 L49684: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49685;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L49685: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L49686;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L49686: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4513;  /* *avx512f_scattersiv4si */
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L59833: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50234;
    }
  goto L57058;

 L50234: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50235;
    }
  goto L57058;

 L50235: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50236;
  x1 = XEXP (x0, 0);
  goto L57058;

 L50236: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50237;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L50237: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L50238;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L50238: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4537;  /* *avx512f_scatterdiv4si */
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L59831: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49703;
  goto L57058;

 L49703: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49704;
    }
  goto L57058;

 L49704: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L59834;
    case V2DImode:
      goto L59835;
    default:
      break;
    }
  goto L57058;

 L59834: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49705;
    }
  goto L57058;

 L49705: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49706;
    }
  goto L57058;

 L49706: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49707;
  x1 = XEXP (x0, 0);
  goto L57058;

 L49707: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49708;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L49708: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L49709;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L49709: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4514;  /* *avx512f_scattersiv4si */
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L59835: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50257;
    }
  goto L57058;

 L50257: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50258;
    }
  goto L57058;

 L50258: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50259;
  x1 = XEXP (x0, 0);
  goto L57058;

 L50259: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50260;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L50260: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L50261;
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L50261: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4538;  /* *avx512f_scatterdiv4si */
    }
  x1 = XEXP (x0, 0);
  goto L57058;

 L22708: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode)
    goto L59836;
 L11504: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V4SImode))
    {
      operands[1] = x1;
      goto L11505;
    }
  x1 = XEXP (x0, 0);
  goto L57073;

 L59836: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22709;
    case VEC_SELECT:
      goto L22867;
    case SS_TRUNCATE:
      goto L25931;
    case TRUNCATE:
      goto L25936;
    case US_TRUNCATE:
      goto L25941;
    default:
     break;
   }
  goto L11504;

 L22709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L59841;
  goto L11504;

 L59841: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_DUPLICATE:
      goto L22710;
    case SS_TRUNCATE:
      goto L25977;
    case TRUNCATE:
      goto L25985;
    case US_TRUNCATE:
      goto L25993;
    default:
     break;
   }
  goto L11504;

 L22710: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L22711;
    }
  goto L11504;

 L22711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L22712;
    }
  goto L11504;

 L22712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2247;  /* vec_setv4si_0 */
    }
  goto L11504;

 L25977: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L25978;
    }
  goto L11504;

 L25978: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L25979;
    }
  goto L11504;

 L25979: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25980;
    }
  goto L11504;

 L25980: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2560;  /* avx512vl_ss_truncatev4div4si2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L25985: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L25986;
    }
  goto L11504;

 L25986: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L25987;
    }
  goto L11504;

 L25987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25988;
    }
  goto L11504;

 L25988: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2561;  /* avx512vl_truncatev4div4si2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L25993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L25994;
    }
  goto L11504;

 L25994: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L25995;
    }
  goto L11504;

 L25995: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25996;
    }
  goto L11504;

 L25996: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2562;  /* avx512vl_us_truncatev4div4si2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L22867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L59845;
    case V8SImode:
      goto L59846;
    default:
      break;
    }
  goto L11504;

 L59845: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L22868;
    }
  goto L11504;

 L22868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22869;
  goto L11504;

 L22869: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L22870;
    }
  goto L11504;

 L22870: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22871;
    }
  goto L11504;

 L22871: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L22872;
    }
  goto L11504;

 L22872: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L22873;
    }
  goto L11504;

 L22873: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6702 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[2]) == (INTVAL (operands[3]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[4]) == (INTVAL (operands[5]) - 1))))
    {
      return 2264;  /* *avx512f_vextracti32x4_1 */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L59846: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L23257;
    }
 L59847: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L23353;
    }
  goto L11504;

 L23257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23258;
  x2 = XEXP (x1, 0);
  goto L59847;

 L23258: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23259;
  x2 = XEXP (x1, 0);
  goto L59847;

 L23259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23260;
  x2 = XEXP (x1, 0);
  goto L59847;

 L23260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23261;
  x2 = XEXP (x1, 0);
  goto L59847;

 L23261: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7062 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && 1))
    {
      return 2296;  /* vec_extract_lo_v8si */
    }
  x2 = XEXP (x1, 0);
  goto L59847;

 L23353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23354;
  goto L11504;

 L23354: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23355;
  goto L11504;

 L23355: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23356;
  goto L11504;

 L23356: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23357;
  goto L11504;

 L23357: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 7117 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2304;  /* vec_extract_hi_v8si */
    }
  goto L11504;

 L25931: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L25932;
    }
  goto L11504;

 L25932: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2551;  /* *avx512vl_ss_truncatev4div4si2 */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L25936: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L25937;
    }
  goto L11504;

 L25937: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2552;  /* *avx512vl_truncatev4div4si2 */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L25941: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L25942;
    }
  goto L11504;

 L25942: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8621 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2553;  /* *avx512vl_us_truncatev4div4si2 */
    }
  x1 = XEXP (x0, 1);
  goto L11504;

 L11505: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V4SImode)
       || register_operand (operands[1], V4SImode))))
    {
      return 1005;  /* *movv4si_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57073;

 L11570: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode)
    goto L59848;
  x1 = XEXP (x0, 0);
  goto L57091;

 L59848: ATTRIBUTE_UNUSED_LABEL
  tem = recog_60 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57091;

 L11822: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode)
    goto L59910;
  x1 = XEXP (x0, 0);
  goto L57119;

 L59910: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11823;
    case UNSPEC:
      goto L59912;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57119;

 L11823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode)
    goto L59914;
  x1 = XEXP (x0, 0);
  goto L57119;

 L59914: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L59916;
    case VEC_SELECT:
      goto L22794;
    case REG:
    case SUBREG:
      goto L59913;
    default:
      x1 = XEXP (x0, 0);
      goto L57119;
   }
 L59913: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L11824;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L59916: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12345;
  x1 = XEXP (x0, 0);
  goto L57119;

 L12345: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L12346;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L12346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12347;
  x1 = XEXP (x0, 0);
  goto L57119;

 L12347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12348;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L12348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1136;  /* avx512vl_storedquv4si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22794: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L22795;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22795: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22796;
  x1 = XEXP (x0, 0);
  goto L57119;

 L22796: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22797;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22797: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22798;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22798: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L22799;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22799: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L22800;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4SImode))
    {
      operands[6] = x2;
      goto L22801;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L22802;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22802: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6660 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ((INTVAL (operands[2]) % 4 == 0)
       && INTVAL (operands[2]) == (INTVAL (operands[3]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[4]) == (INTVAL (operands[5]) - 1))
   && rtx_equal_p (operands[6], operands[0])))
    {
      return 2257;  /* avx512f_vextracti32x4_1_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L11824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11825;
  x1 = XEXP (x0, 0);
  goto L57119;

 L11825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11826;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L11826: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1056;  /* avx512vl_storev4si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L59912: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12308;
  x1 = XEXP (x0, 0);
  goto L57119;

 L12308: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L12309;
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L12309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1434 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 298 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1130;  /* sse2_storedquv4si */
    }
  x1 = XEXP (x0, 0);
  goto L57119;

 L22876: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode)
    goto L59917;
  x1 = XEXP (x0, 0);
  goto L57124;

 L59917: ATTRIBUTE_UNUSED_LABEL
  tem = recog_65 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57124;

 L23299: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode)
    goto L60169;
  goto ret0;

 L60169: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L23300;
    case VEC_CONCAT:
      goto L27833;
    case UNSPEC:
      goto L60173;
    default:
     break;
   }
  goto ret0;

 L23300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L23301;
  goto ret0;

 L23301: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L23302;
    }
  goto ret0;

 L23302: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23303;
  goto ret0;

 L23303: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60175;
  goto ret0;

 L60175: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 0LL:
        goto L23304;
      case 4LL:
        goto L23330;
      default:
        break;
      }
  goto ret0;

 L23304: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23305;
  goto ret0;

 L23305: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23306;
  goto ret0;

 L23306: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23307;
  goto ret0;

 L23307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L23308;
    }
  goto ret0;

 L23308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23309;
    }
  goto ret0;

 L23309: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7084 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL && TARGET_AVX512F
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2300;  /* vec_extract_lo_v8si_maskm */
    }
  goto ret0;

 L23330: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23331;
  goto ret0;

 L23331: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23332;
  goto ret0;

 L23332: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23333;
  goto ret0;

 L23333: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L23334;
    }
  goto ret0;

 L23334: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L23335;
    }
  goto ret0;

 L23335: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7102 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && TARGET_AVX512VL
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2302;  /* vec_extract_hi_v8si_maskm */
    }
  goto ret0;

 L27833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SImode)
    goto L60177;
  goto ret0;

 L60177: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L27834;
    case TRUNCATE:
      goto L27844;
    case US_TRUNCATE:
      goto L27854;
    case VEC_MERGE:
      goto L27909;
    default:
     break;
   }
  goto ret0;

 L27834: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27835;
    }
  goto ret0;

 L27835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27836;
  goto ret0;

 L27836: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27837;
  goto ret0;

 L27837: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L27838;
  goto ret0;

 L27838: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27839;
  goto ret0;

 L27839: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 9035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2668;  /* *avx512vl_ss_truncatev2div2si2_store */
    }
  goto ret0;

 L27844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27845;
    }
  goto ret0;

 L27845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27846;
  goto ret0;

 L27846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27847;
  goto ret0;

 L27847: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L27848;
  goto ret0;

 L27848: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27849;
  goto ret0;

 L27849: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 9035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2669;  /* *avx512vl_truncatev2div2si2_store */
    }
  goto ret0;

 L27854: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L27855;
    }
  goto ret0;

 L27855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27856;
  goto ret0;

 L27856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27857;
  goto ret0;

 L27857: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L27858;
  goto ret0;

 L27858: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27859;
  goto ret0;

 L27859: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 9035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2670;  /* *avx512vl_us_truncatev2div2si2_store */
    }
  goto ret0;

 L27909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode)
    goto L60181;
  goto ret0;

 L60181: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SS_TRUNCATE:
      goto L27910;
    case TRUNCATE:
      goto L27927;
    case US_TRUNCATE:
      goto L27944;
    default:
     break;
   }
  goto ret0;

 L27910: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27911;
    }
  goto ret0;

 L27911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27912;
  goto ret0;

 L27912: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27913;
  goto ret0;

 L27913: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27914;
  goto ret0;

 L27914: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27915;
  goto ret0;

 L27915: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27916;
  goto ret0;

 L27916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27917;
    }
  goto ret0;

 L27917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27918;
  goto ret0;

 L27918: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27919;
  goto ret0;

 L27919: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L27920;
  goto ret0;

 L27920: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27921;
  goto ret0;

 L27921: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 9072 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2674;  /* avx512vl_ss_truncatev2div2si2_mask_store */
    }
  goto ret0;

 L27927: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27928;
    }
  goto ret0;

 L27928: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27929;
  goto ret0;

 L27929: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27930;
  goto ret0;

 L27930: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27931;
  goto ret0;

 L27931: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27932;
  goto ret0;

 L27932: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27933;
  goto ret0;

 L27933: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27934;
    }
  goto ret0;

 L27934: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27935;
  goto ret0;

 L27935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27936;
  goto ret0;

 L27936: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L27937;
  goto ret0;

 L27937: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27938;
  goto ret0;

 L27938: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 9072 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2675;  /* avx512vl_truncatev2div2si2_mask_store */
    }
  goto ret0;

 L27944: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L27945;
    }
  goto ret0;

 L27945: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L27946;
  goto ret0;

 L27946: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L27947;
  goto ret0;

 L27947: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L27948;
  goto ret0;

 L27948: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L27949;
  goto ret0;

 L27949: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L27950;
  goto ret0;

 L27950: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L27951;
    }
  goto ret0;

 L27951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L27952;
  goto ret0;

 L27952: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L27953;
  goto ret0;

 L27953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L27954;
  goto ret0;

 L27954: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L27955;
  goto ret0;

 L27955: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 9072 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2676;  /* avx512vl_us_truncatev2div2si2_mask_store */
    }
  goto ret0;

 L60173: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 3)
    goto L60184;
  goto ret0;

 L60184: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44070;
    case 165LL:
      goto L50543;
    default:
      break;
    }
  goto ret0;

 L44070: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44071;
    }
  goto ret0;

 L44071: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L44072;
    }
  goto ret0;

 L44072: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 416 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4239;  /* avx2_maskstored */
    }
  goto ret0;

 L50543: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L50544;
    }
  goto ret0;

 L50544: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50545;
  goto ret0;

 L50545: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50546;
    }
  goto ret0;

 L50546: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4565;  /* avx512vl_compressstorev4si_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_67 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L60302;
    case 4:
      goto L60305;
    case 3:
      goto L60306;
    case 2:
      goto L60307;
    default:
      break;
    }
  goto ret0;

 L60302: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12235;
    case 41LL:
      goto L20280;
    case 150LL:
      goto L20345;
    case 163LL:
      goto L51379;
    default:
      break;
    }
  goto ret0;

 L12235: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L12236;
    }
  goto ret0;

 L12236: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L12237;
    }
  goto ret0;

 L12237: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12238;
    }
  goto ret0;

 L12238: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1117;  /* *avx512f_loaddquv8di_mask */
    }
  goto ret0;

 L20280: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L60314;
    case V8DFmode:
      goto L60315;
    default:
      break;
    }
  goto ret0;

 L60314: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20281;
    }
  goto ret0;

 L20281: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L20282;
    }
  goto ret0;

 L20282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20283;
    }
  goto ret0;

 L20283: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4091 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 1973;  /* avx512dq_cvtps2qqv8di_mask */
    }
  goto ret0;

 L60315: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21463;
    }
  goto ret0;

 L21463: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L21464;
    }
  goto ret0;

 L21464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21465;
    }
  goto ret0;

 L21465: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2121;  /* fix_notruncv8dfv8di2_mask */
    }
  goto ret0;

 L20345: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L60316;
    case V8DFmode:
      goto L60317;
    default:
      break;
    }
  goto ret0;

 L60316: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20346;
    }
  goto ret0;

 L20346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L20347;
    }
  goto ret0;

 L20347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20348;
    }
  goto ret0;

 L20348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 1981;  /* avx512dq_cvtps2uqqv8di_mask */
    }
  goto ret0;

 L60317: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21521;
    }
  goto ret0;

 L21521: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L21522;
    }
  goto ret0;

 L21522: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21523;
    }
  goto ret0;

 L21523: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2129;  /* ufix_notruncv8dfv8di2_mask */
    }
  goto ret0;

 L51379: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L51380;
    }
  goto ret0;

 L51380: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L51381;
    }
  goto ret0;

 L51381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51382;
    }
  goto ret0;

 L51382: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD)))
    {
      return 4668;  /* conflictv8di_mask */
    }
  goto ret0;

 L60305: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 159)
    goto L24066;
  goto ret0;

 L24066: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L24067;
    }
  goto ret0;

 L24067: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L24068;
    }
  goto ret0;

 L24068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L24069;
    }
  goto ret0;

 L24069: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24070;
    }
  goto ret0;

 L24070: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DImode))
    {
      operands[5] = x2;
      goto L24071;
    }
 L24152: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24153;
  goto ret0;

 L24071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24072;
    }
  x2 = XEXP (x1, 1);
  goto L24152;

 L24072: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2363;  /* avx512f_vternlogv8di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24152;

 L24153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24154;
    }
  goto ret0;

 L24154: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7713 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2371;  /* avx512f_vternlogv8di_mask */
    }
  goto ret0;

 L60306: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 162LL:
      goto L24471;
    case 147LL:
      goto L42704;
    case 149LL:
      goto L42989;
    case 148LL:
      goto L43190;
    case 191LL:
      goto L51494;
    case 192LL:
      goto L51511;
    default:
      break;
    }
  goto ret0;

 L24471: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L24472;
    }
  goto ret0;

 L24472: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L24473;
    }
  goto ret0;

 L24473: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L24474;
    }
  goto ret0;

 L24474: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[4] = x2;
      goto L24475;
    }
  goto ret0;

 L24475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24476;
    }
  goto ret0;

 L24476: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2409;  /* avx512f_alignv8di_mask */
    }
  goto ret0;

 L42704: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L42705;
    }
  goto ret0;

 L42705: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L42706;
    }
  goto ret0;

 L42706: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L42707;
    }
  goto ret0;

 L42707: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DImode))
    {
      operands[4] = x2;
      goto L42708;
    }
  goto ret0;

 L42708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42709;
    }
  goto ret0;

 L42709: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4092;  /* avx512f_vpermi2varv8di3_maskz_1 */
    }
  goto ret0;

 L42989: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L42990;
    }
  goto ret0;

 L42990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L42991;
    }
  goto ret0;

 L42991: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L42992;
    }
  goto ret0;

 L42992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L42993;
  goto ret0;

 L42993: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L42994;
    }
  goto ret0;

 L42994: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4125;  /* avx512f_vpermi2varv8di3_mask */
    }
  goto ret0;

 L43190: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L43191;
    }
  goto ret0;

 L43191: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L43192;
    }
  goto ret0;

 L43192: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L43193;
    }
  goto ret0;

 L43193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DImode))
    {
      operands[4] = x2;
      goto L43194;
    }
 L43478: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43479;
  goto ret0;

 L43194: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43195;
    }
  x2 = XEXP (x1, 1);
  goto L43478;

 L43195: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4146;  /* avx512f_vpermt2varv8di3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43478;

 L43479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43480;
    }
  goto ret0;

 L43480: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4179;  /* avx512f_vpermt2varv8di3_mask */
    }
  goto ret0;

 L51494: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L51495;
    }
  goto ret0;

 L51495: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L51496;
    }
  goto ret0;

 L51496: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L51497;
    }
  goto ret0;

 L51497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DImode))
    {
      operands[4] = x2;
      goto L51498;
    }
 L51592: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L51593;
  goto ret0;

 L51498: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51499;
    }
  x2 = XEXP (x1, 1);
  goto L51592;

 L51499: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA))
    {
      return 4687;  /* vpamdd52luqv8di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L51592;

 L51593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51594;
    }
  goto ret0;

 L51594: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18706 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA))
    {
      return 4698;  /* vpamdd52luqv8di_mask */
    }
  goto ret0;

 L51511: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L51512;
    }
  goto ret0;

 L51512: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L51513;
    }
  goto ret0;

 L51513: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L51514;
    }
  goto ret0;

 L51514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DImode))
    {
      operands[4] = x2;
      goto L51515;
    }
 L51602: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L51603;
  goto ret0;

 L51515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51516;
    }
  x2 = XEXP (x1, 1);
  goto L51602;

 L51516: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA))
    {
      return 4689;  /* vpamdd52huqv8di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L51602;

 L51603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51604;
    }
  goto ret0;

 L51604: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18706 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA))
    {
      return 4699;  /* vpamdd52huqv8di_mask */
    }
  goto ret0;

 L60307: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 143)
    goto L41207;
  goto ret0;

 L41207: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L41208;
    }
  goto ret0;

 L41208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L41209;
    }
  goto ret0;

 L41209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L41210;
    }
  goto ret0;

 L41210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41211;
    }
  goto ret0;

 L41211: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 538 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3892;  /* avx512f_permvarv8di_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_68 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L60290;
    case FIX:
      goto L21346;
    case UNSIGNED_FIX:
      goto L21378;
    case VEC_SELECT:
      goto L25528;
    case PLUS:
      goto L28494;
    case MINUS:
      goto L28509;
    case MULT:
      goto L29370;
    case ASHIFTRT:
      goto L29986;
    case ASHIFT:
      goto L30241;
    case LSHIFTRT:
      goto L30256;
    case ROTATE:
      goto L30397;
    case ROTATERT:
      goto L30412;
    case SMAX:
      goto L30919;
    case SMIN:
      goto L30934;
    case UMAX:
      goto L30949;
    case UMIN:
      goto L30964;
    case AND:
      goto L32053;
    case IOR:
      goto L32419;
    case XOR:
      goto L32434;
    case VEC_MERGE:
      goto L34567;
    case VEC_CONCAT:
      goto L34789;
    case ABS:
      goto L37898;
    case SIGN_EXTEND:
      goto L38621;
    case ZERO_EXTEND:
      goto L38653;
    case VEC_DUPLICATE:
      goto L41546;
    case CLZ:
      goto L51301;
    case REG:
    case SUBREG:
    case MEM:
      goto L60250;
    default:
      goto L60251;
   }
 L60250: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L11579;
    }
 L60251: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L11705;
    }
 L60275: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L34559;
    }
  goto ret0;

 L60290: ATTRIBUTE_UNUSED_LABEL
  return recog_67 (x0, insn, pnum_clobbers);

 L21346: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L60318;
    case V8SFmode:
      goto L60319;
    default:
      break;
    }
  goto ret0;

 L60318: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21347;
    }
  goto ret0;

 L21347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L21348;
    }
  goto ret0;

 L21348: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21349;
    }
  goto ret0;

 L21349: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2105;  /* fix_truncv8dfv8di2_mask */
    }
  goto ret0;

 L60319: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21579;
    }
  goto ret0;

 L21579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L21580;
    }
  goto ret0;

 L21580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21581;
    }
  goto ret0;

 L21581: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2137;  /* fix_truncv8sfv8di2_mask */
    }
  goto ret0;

 L21378: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L60320;
    case V8SFmode:
      goto L60321;
    default:
      break;
    }
  goto ret0;

 L60320: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21379;
    }
  goto ret0;

 L21379: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L21380;
    }
  goto ret0;

 L21380: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21381;
    }
  goto ret0;

 L21381: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2109;  /* ufix_truncv8dfv8di2_mask */
    }
  goto ret0;

 L60321: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21611;
    }
  goto ret0;

 L21611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L21612;
    }
  goto ret0;

 L21612: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21613;
    }
  goto ret0;

 L21613: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2141;  /* ufix_truncv8sfv8di2_mask */
    }
  goto ret0;

 L25528: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16DImode:
      goto L60322;
    case V8DImode:
      goto L60323;
    default:
      break;
    }
  goto ret0;

 L60322: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L25529;
  goto ret0;

 L25529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L25530;
    }
  goto ret0;

 L25530: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L25531;
    }
  goto ret0;

 L25531: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L25532;
  goto ret0;

 L25532: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60324;
  goto ret0;

 L60324: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L25533;
      case 0LL:
        goto L25615;
      default:
        break;
      }
 L60326: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L34966;
    }
  goto ret0;

 L25533: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L25534;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25534: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L25535;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25535: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L25536;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25536: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L25537;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25537: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L25538;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25538: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L25539;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25539: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L25540;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L25541;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25542;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25542: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2500;  /* avx512f_interleave_highv8di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25615: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L25616;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25616: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L25617;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25617: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L25618;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25618: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L25619;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25619: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L25620;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25620: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L25621;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25621: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L25622;
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L25623;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25624;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L25624: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2506;  /* avx512f_interleave_lowv8di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60326;

 L34966: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L34967;
    }
  goto ret0;

 L34967: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L34968;
    }
  goto ret0;

 L34968: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L34969;
    }
  goto ret0;

 L34969: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L34970;
    }
  goto ret0;

 L34970: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L34971;
    }
  goto ret0;

 L34971: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L34972;
    }
  goto ret0;

 L34972: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L34973;
    }
  goto ret0;

 L34973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[11] = x2;
      goto L34974;
    }
  goto ret0;

 L34974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[12] = x2;
      goto L34975;
    }
  goto ret0;

 L34975: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11883 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[9]) == (INTVAL (operands[10]) - 1)))))
    {
      return 3408;  /* avx512f_shuf_i64x2_1_mask */
    }
  goto ret0;

 L60323: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L41408;
    }
  goto ret0;

 L41408: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L41409;
  goto ret0;

 L41409: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L41410;
    }
  goto ret0;

 L41410: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L41411;
    }
  goto ret0;

 L41411: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L41412;
    }
  goto ret0;

 L41412: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L41413;
    }
  goto ret0;

 L41413: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[6] = x2;
      goto L41414;
    }
  goto ret0;

 L41414: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L41415;
    }
  goto ret0;

 L41415: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 534 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3916;  /* avx512f_permv8di_1_mask */
    }
  goto ret0;

 L28494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L28495;
    }
  goto ret0;

 L28495: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L28496;
    }
  goto ret0;

 L28496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L28497;
    }
  goto ret0;

 L28497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28498;
    }
  goto ret0;

 L28498: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V8DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2726;  /* *addv8di3 */
    }
 L28636: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (PLUS, V8DImode, operands)))
    {
      return 2743;  /* *addv8di3_mask */
    }
  goto ret0;

 L28509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L28510;
    }
  goto ret0;

 L28510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L28511;
    }
  goto ret0;

 L28511: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L28512;
    }
  goto ret0;

 L28512: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28513;
    }
  goto ret0;

 L28513: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V8DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2728;  /* *subv8di3 */
    }
 L28645: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (MINUS, V8DImode, operands)))
    {
      return 2744;  /* *subv8di3_mask */
    }
  goto ret0;

 L29370: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60327;
  goto ret0;

 L60327: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L29371;
    case SIGN_EXTEND:
      goto L29505;
    case REG:
    case SUBREG:
      goto L60329;
    default:
      goto ret0;
   }
 L60329: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L29753;
    }
  goto ret0;

 L29371: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29372;
  goto ret0;

 L29372: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16SImode))
    {
      operands[1] = x5;
      goto L29373;
    }
  goto ret0;

 L29373: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29374;
  goto ret0;

 L29374: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29375;
  goto ret0;

 L29375: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29376;
  goto ret0;

 L29376: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29377;
  goto ret0;

 L29377: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29378;
  goto ret0;

 L29378: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29379;
  goto ret0;

 L29379: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29380;
  goto ret0;

 L29380: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29381;
  goto ret0;

 L29381: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29382;
  goto ret0;

 L29382: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L29383;
  goto ret0;

 L29383: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29384;
  goto ret0;

 L29384: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16SImode))
    {
      operands[2] = x5;
      goto L29385;
    }
  goto ret0;

 L29385: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29386;
  goto ret0;

 L29386: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29387;
  goto ret0;

 L29387: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29388;
  goto ret0;

 L29388: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29389;
  goto ret0;

 L29389: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29390;
  goto ret0;

 L29390: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29391;
  goto ret0;

 L29391: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29392;
  goto ret0;

 L29392: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29393;
  goto ret0;

 L29393: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29394;
  goto ret0;

 L29394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L29395;
    }
  goto ret0;

 L29395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29396;
    }
  goto ret0;

 L29396: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9380 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (MULT, V16SImode, operands))))
    {
      return 2828;  /* *vec_widen_umult_even_v16si_mask */
    }
  goto ret0;

 L29505: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29506;
  goto ret0;

 L29506: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16SImode))
    {
      operands[1] = x5;
      goto L29507;
    }
  goto ret0;

 L29507: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29508;
  goto ret0;

 L29508: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29509;
  goto ret0;

 L29509: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29510;
  goto ret0;

 L29510: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29511;
  goto ret0;

 L29511: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29512;
  goto ret0;

 L29512: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29513;
  goto ret0;

 L29513: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29514;
  goto ret0;

 L29514: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29515;
  goto ret0;

 L29515: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29516;
  goto ret0;

 L29516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29517;
  goto ret0;

 L29517: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29518;
  goto ret0;

 L29518: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V16SImode))
    {
      operands[2] = x5;
      goto L29519;
    }
  goto ret0;

 L29519: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 8)
    goto L29520;
  goto ret0;

 L29520: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29521;
  goto ret0;

 L29521: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29522;
  goto ret0;

 L29522: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29523;
  goto ret0;

 L29523: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29524;
  goto ret0;

 L29524: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 4);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29525;
  goto ret0;

 L29525: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 5);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29526;
  goto ret0;

 L29526: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 6);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29527;
  goto ret0;

 L29527: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 7);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29528;
  goto ret0;

 L29528: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L29529;
    }
  goto ret0;

 L29529: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29530;
    }
  goto ret0;

 L29530: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9497 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (MULT, V16SImode, operands))))
    {
      return 2834;  /* *vec_widen_smult_even_v16si_mask */
    }
  goto ret0;

 L29753: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L29754;
    }
  goto ret0;

 L29754: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L29755;
    }
  goto ret0;

 L29755: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29756;
    }
  goto ret0;

 L29756: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9728 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (64 == 64 || TARGET_AVX512VL)) && 
#line 303 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2848;  /* avx512dq_mulv8di3_mask */
    }
  goto ret0;

 L29986: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60330;
  goto ret0;

 L60330: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L29987;
    }
 L60331: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L44192;
    }
  goto ret0;

 L29987: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29988;
    }
  x3 = XEXP (x2, 0);
  goto L60331;

 L29988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L29989;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60331;

 L29989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29990;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60331;

 L29990: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2880;  /* ashrv8di3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60331;

 L44192: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L44193;
    }
  goto ret0;

 L44193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L44194;
    }
  goto ret0;

 L44194: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44195;
    }
  goto ret0;

 L44195: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4257;  /* avx512f_ashrvv8di_mask */
    }
  goto ret0;

 L30241: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60332;
  goto ret0;

 L60332: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30242;
    }
 L60333: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L44342;
    }
  goto ret0;

 L30242: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30243;
    }
  x3 = XEXP (x2, 0);
  goto L60333;

 L30243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30244;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60333;

 L30244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30245;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60333;

 L30245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL))))
    {
      return 2914;  /* ashlv8di3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60333;

 L44342: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L44343;
    }
  goto ret0;

 L44343: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L44344;
    }
  goto ret0;

 L44344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44345;
    }
  goto ret0;

 L44345: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 411 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4277;  /* avx512f_ashlvv8di_mask */
    }
  goto ret0;

 L30256: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60334;
  goto ret0;

 L60334: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30257;
    }
 L60335: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L44357;
    }
  goto ret0;

 L30257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30258;
    }
  x3 = XEXP (x2, 0);
  goto L60335;

 L30258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30259;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60335;

 L30259: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30260;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60335;

 L30260: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL))))
    {
      return 2916;  /* lshrv8di3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60335;

 L44357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L44358;
    }
  goto ret0;

 L44358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L44359;
    }
  goto ret0;

 L44359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44360;
    }
  goto ret0;

 L44360: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 411 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4279;  /* avx512f_lshrvv8di_mask */
    }
  goto ret0;

 L30397: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60336;
  goto ret0;

 L60336: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30398;
    }
 L60337: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30578;
    }
  goto ret0;

 L30398: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L30399;
    }
  x3 = XEXP (x2, 0);
  goto L60337;

 L30399: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30400;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60337;

 L30400: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30401;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60337;

 L30401: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2936;  /* avx512f_rolvv8di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60337;

 L30578: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30579;
    }
  goto ret0;

 L30579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30580;
    }
  goto ret0;

 L30580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30581;
    }
  goto ret0;

 L30581: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2960;  /* avx512f_rolv8di_mask */
    }
  goto ret0;

 L30412: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60338;
  goto ret0;

 L60338: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30413;
    }
 L60339: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30593;
    }
  goto ret0;

 L30413: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L30414;
    }
  x3 = XEXP (x2, 0);
  goto L60339;

 L30414: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30415;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60339;

 L30415: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30416;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60339;

 L30416: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2938;  /* avx512f_rorvv8di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60339;

 L30593: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30594;
    }
  goto ret0;

 L30594: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30595;
    }
  goto ret0;

 L30595: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30596;
    }
  goto ret0;

 L30596: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2962;  /* avx512f_rorv8di_mask */
    }
  goto ret0;

 L30919: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30920;
    }
  goto ret0;

 L30920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L30921;
    }
  goto ret0;

 L30921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30922;
    }
  goto ret0;

 L30922: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30923;
    }
  goto ret0;

 L30923: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V8DImode, operands))))
    {
      return 3008;  /* *avx512bw_smaxv8di3_mask */
    }
  goto ret0;

 L30934: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30935;
    }
  goto ret0;

 L30935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L30936;
    }
  goto ret0;

 L30936: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30937;
    }
  goto ret0;

 L30937: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30938;
    }
  goto ret0;

 L30938: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V8DImode, operands))))
    {
      return 3010;  /* *avx512bw_sminv8di3_mask */
    }
  goto ret0;

 L30949: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30950;
    }
  goto ret0;

 L30950: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L30951;
    }
  goto ret0;

 L30951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30952;
    }
  goto ret0;

 L30952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30953;
    }
  goto ret0;

 L30953: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V8DImode, operands))))
    {
      return 3012;  /* *avx512bw_umaxv8di3_mask */
    }
  goto ret0;

 L30964: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L30965;
    }
  goto ret0;

 L30965: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L30966;
    }
  goto ret0;

 L30966: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L30967;
    }
  goto ret0;

 L30967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30968;
    }
  goto ret0;

 L30968: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V8DImode, operands))))
    {
      return 3014;  /* *avx512bw_uminv8di3_mask */
    }
  goto ret0;

 L32053: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L60340;
  goto ret0;

 L60340: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32054;
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L32405;
    }
  goto ret0;

 L32054: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L32055;
    }
  goto ret0;

 L32055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L32056;
    }
  goto ret0;

 L32056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L32057;
    }
  goto ret0;

 L32057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32058;
    }
  goto ret0;

 L32058: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3166;  /* *andnotv8di3 */
    }
 L32268: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10881 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3190;  /* *andnotv8di3_mask */
    }
  goto ret0;

 L32405: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L32406;
    }
  goto ret0;

 L32406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L32407;
    }
  goto ret0;

 L32407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32408;
    }
  goto ret0;

 L32408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V8DImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3206;  /* andv8di3_mask */
    }
  goto ret0;

 L32419: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L32420;
    }
  goto ret0;

 L32420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L32421;
    }
  goto ret0;

 L32421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L32422;
    }
  goto ret0;

 L32422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32423;
    }
  goto ret0;

 L32423: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V8DImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3208;  /* iorv8di3_mask */
    }
  goto ret0;

 L32434: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L32435;
    }
  goto ret0;

 L32435: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L32436;
    }
  goto ret0;

 L32436: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L32437;
    }
  goto ret0;

 L32437: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32438;
    }
  goto ret0;

 L32438: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V8DImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3210;  /* xorv8di3_mask */
    }
  goto ret0;

 L34567: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L34568;
    }
  goto ret0;

 L34568: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8DImode
      && GET_CODE (x3) == VEC_DUPLICATE)
    goto L34569;
  goto ret0;

 L34569: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L34570;
    }
  goto ret0;

 L34570: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L34571;
    }
  goto ret0;

 L34571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[4] = x2;
      goto L34572;
    }
  goto ret0;

 L34572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L34573;
    }
  goto ret0;

 L34573: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 6597 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))))
    {
      return 3380;  /* avx512dq_vinserti64x2_1_mask */
    }
  goto ret0;

 L34789: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L34790;
    }
  goto ret0;

 L34790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4DImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L34791;
  goto ret0;

 L34791: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L34792;
    }
  goto ret0;

 L34792: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L34793;
  goto ret0;

 L34793: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (GET_CODE (x5) == CONST_INT)
    goto L60342;
  goto ret0;

 L60342: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x5, 0) == XWINT (x5, 0))
    switch ((int) XWINT (x5, 0))
      {
      case 4LL:
        goto L34794;
      case 0LL:
        goto L34846;
      default:
        break;
      }
  goto ret0;

 L34794: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34795;
  goto ret0;

 L34795: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34796;
  goto ret0;

 L34796: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34797;
  goto ret0;

 L34797: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L34798;
    }
  goto ret0;

 L34798: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34799;
    }
  goto ret0;

 L34799: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3396;  /* vec_set_lo_v8di_mask */
    }
  goto ret0;

 L34846: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34847;
  goto ret0;

 L34847: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34848;
  goto ret0;

 L34848: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34849;
  goto ret0;

 L34849: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L34850;
    }
  goto ret0;

 L34850: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34851;
    }
  goto ret0;

 L34851: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3400;  /* vec_set_hi_v8di_mask */
    }
  goto ret0;

 L37898: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L37899;
    }
  goto ret0;

 L37899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L37900;
    }
  goto ret0;

 L37900: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L37901;
    }
  goto ret0;

 L37901: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3555;  /* absv8di2_mask */
    }
  goto ret0;

 L38621: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8QImode:
      goto L60344;
    case V8HImode:
      goto L60345;
    case V8SImode:
      goto L60346;
    default:
      break;
    }
  goto ret0;

 L60344: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38622;
  goto ret0;

 L38622: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38623;
    }
  goto ret0;

 L38623: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L38624;
  goto ret0;

 L38624: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38625;
  goto ret0;

 L38625: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38626;
  goto ret0;

 L38626: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38627;
  goto ret0;

 L38627: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38628;
  goto ret0;

 L38628: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38629;
  goto ret0;

 L38629: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38630;
  goto ret0;

 L38630: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38631;
  goto ret0;

 L38631: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L38632;
  goto ret0;

 L38632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L38633;
    }
  goto ret0;

 L38633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38634;
    }
  goto ret0;

 L38634: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3642;  /* avx512f_sign_extendv8qiv8di2_mask */
    }
  goto ret0;

 L60345: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38765;
    }
  goto ret0;

 L38765: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L38766;
    }
  goto ret0;

 L38766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38767;
    }
  goto ret0;

 L38767: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3654;  /* avx512f_sign_extendv8hiv8di2_mask */
    }
  goto ret0;

 L60346: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L38879;
    }
  goto ret0;

 L38879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L38880;
    }
  goto ret0;

 L38880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38881;
    }
  goto ret0;

 L38881: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3666;  /* avx512f_sign_extendv8siv8di2_mask */
    }
  goto ret0;

 L38653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8QImode:
      goto L60347;
    case V8HImode:
      goto L60348;
    case V8SImode:
      goto L60349;
    default:
      break;
    }
  goto ret0;

 L60347: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38654;
  goto ret0;

 L38654: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38655;
    }
  goto ret0;

 L38655: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L38656;
  goto ret0;

 L38656: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38657;
  goto ret0;

 L38657: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38658;
  goto ret0;

 L38658: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38659;
  goto ret0;

 L38659: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38660;
  goto ret0;

 L38660: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38661;
  goto ret0;

 L38661: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38662;
  goto ret0;

 L38662: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38663;
  goto ret0;

 L38663: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L38664;
  goto ret0;

 L38664: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L38665;
    }
  goto ret0;

 L38665: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38666;
    }
  goto ret0;

 L38666: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3644;  /* avx512f_zero_extendv8qiv8di2_mask */
    }
  goto ret0;

 L60348: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38778;
    }
  goto ret0;

 L38778: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L38779;
    }
  goto ret0;

 L38779: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38780;
    }
  goto ret0;

 L38780: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3656;  /* avx512f_zero_extendv8hiv8di2_mask */
    }
  goto ret0;

 L60349: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L38892;
    }
  goto ret0;

 L38892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L38893;
    }
  goto ret0;

 L38893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38894;
    }
  goto ret0;

 L38894: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3668;  /* avx512f_zero_extendv8siv8di2_mask */
    }
  goto ret0;

 L41546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case DImode:
      goto L60350;
    case V4DImode:
      goto L60351;
    case V2DImode:
      goto L60353;
    default:
      break;
    }
  goto ret0;

 L60350: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41547;
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L41984;
    }
  goto ret0;

 L41547: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L41548;
    }
  goto ret0;

 L41548: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41549;
  goto ret0;

 L41549: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41550;
  goto ret0;

 L41550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L41551;
    }
  goto ret0;

 L41551: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41552;
    }
  goto ret0;

 L41552: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3932;  /* avx512f_vec_dupv8di_mask */
    }
  goto ret0;

 L41984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L41985;
    }
  goto ret0;

 L41985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41986;
    }
  goto ret0;

 L41986: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3988;  /* avx512f_vec_dup_gprv8di_mask */
    }
  goto ret0;

 L60351: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L41854;
    }
  goto ret0;

 L41854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L41855;
    }
  goto ret0;

 L41855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41856;
    }
  goto ret0;

 L41856: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3968;  /* avx512f_broadcastv8di_mask */
    }
  goto ret0;

 L60353: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L42368;
    }
  goto ret0;

 L42368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L42369;
    }
  goto ret0;

 L42369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42370;
    }
  goto ret0;

 L42370: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4047;  /* avx512dq_broadcastv8di_mask_1 */
    }
  goto ret0;

 L51301: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L51302;
    }
  goto ret0;

 L51302: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L51303;
    }
  goto ret0;

 L51303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51304;
    }
  goto ret0;

 L51304: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD)))
    {
      return 4656;  /* clzv8di2_mask */
    }
  goto ret0;

 L11579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L11580;
    }
  x2 = XEXP (x1, 0);
  goto L60251;

 L11580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11581;
    }
  x2 = XEXP (x1, 0);
  goto L60251;

 L11581: ATTRIBUTE_UNUSED_LABEL
  if (
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1021;  /* avx512f_loadv8di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60251;

 L11705: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L11706;
    }
  x2 = XEXP (x1, 0);
  goto L60275;

 L11706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11707;
    }
  x2 = XEXP (x1, 0);
  goto L60275;

 L11707: ATTRIBUTE_UNUSED_LABEL
  if (
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1039;  /* avx512f_blendmv8di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60275;

 L34559: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L34560;
  goto ret0;

 L34560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L34561;
    }
  goto ret0;

 L34561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34562;
    }
  goto ret0;

 L34562: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 6597 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 3379;  /* *avx512dq_vinserti64x2_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_69 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L60354;
    case 4:
      goto L60357;
    case 3:
      goto L60358;
    case 2:
      goto L60359;
    default:
      break;
    }
  goto ret0;

 L60354: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12229;
    case 41LL:
      goto L20266;
    case 150LL:
      goto L20331;
    case 117LL:
      goto L38119;
    case 163LL:
      goto L51373;
    default:
      break;
    }
  goto ret0;

 L12229: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L12230;
    }
  goto ret0;

 L12230: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1116;  /* *avx512f_loaddquv8di */
    }
  goto ret0;

 L20266: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L60370;
    case V8DFmode:
      goto L60371;
    default:
      break;
    }
  goto ret0;

 L60370: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L20267;
    }
  goto ret0;

 L20267: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4091 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 1971;  /* *avx512dq_cvtps2qqv8di */
    }
  goto ret0;

 L60371: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21449;
    }
  goto ret0;

 L21449: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2119;  /* fix_notruncv8dfv8di2 */
    }
  goto ret0;

 L20331: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L60372;
    case V8DFmode:
      goto L60373;
    default:
      break;
    }
  goto ret0;

 L60372: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L20332;
    }
  goto ret0;

 L20332: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 1979;  /* *avx512dq_cvtps2uqqv8di */
    }
  goto ret0;

 L60373: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21507;
    }
  goto ret0;

 L21507: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2127;  /* ufix_notruncv8dfv8di2 */
    }
  goto ret0;

 L38119: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L38120;
    }
  goto ret0;

 L38120: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14078 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3587;  /* avx512f_movntdqa */
    }
  goto ret0;

 L51373: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L51374;
    }
  goto ret0;

 L51374: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD))
    {
      return 4667;  /* *conflictv8di */
    }
  goto ret0;

 L60357: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 159)
    goto L24057;
  goto ret0;

 L24057: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L24058;
    }
  goto ret0;

 L24058: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L24059;
    }
  goto ret0;

 L24059: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L24060;
    }
  goto ret0;

 L24060: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24061;
    }
  goto ret0;

 L24061: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2362;  /* avx512f_vternlogv8di */
    }
  goto ret0;

 L60358: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 162LL:
      goto L24463;
    case 147LL:
      goto L42696;
    case 148LL:
      goto L43182;
    case 145LL:
      goto L47013;
    case 164LL:
      goto L50417;
    case 166LL:
      goto L50585;
    case 191LL:
      goto L51486;
    case 192LL:
      goto L51503;
    default:
      break;
    }
  goto ret0;

 L24463: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L24464;
    }
  goto ret0;

 L24464: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L24465;
    }
  goto ret0;

 L24465: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24466;
    }
  goto ret0;

 L24466: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2408;  /* *avx512f_alignv8di */
    }
  goto ret0;

 L42696: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L42697;
    }
  goto ret0;

 L42697: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L42698;
    }
  goto ret0;

 L42698: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L42699;
    }
  goto ret0;

 L42699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4091;  /* avx512f_vpermi2varv8di3 */
    }
  goto ret0;

 L43182: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L43183;
    }
  goto ret0;

 L43183: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L43184;
    }
  goto ret0;

 L43184: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L43185;
    }
  goto ret0;

 L43185: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4145;  /* avx512f_vpermt2varv8di3 */
    }
  goto ret0;

 L47013: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L47014;
    }
  if (GET_CODE (x2) == PC)
    goto L47614;
  goto ret0;

 L47014: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47015;
    }
  goto ret0;

 L47015: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[6] = x2;
      goto L47016;
    }
  goto ret0;

 L47016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60374;
    case DImode:
      goto L60375;
    default:
      break;
    }
  goto ret0;

 L60374: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47017;
  goto ret0;

 L47017: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47018;
    }
  goto ret0;

 L47018: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L60376;
    case V8DImode:
      goto L60377;
    default:
      break;
    }
  goto ret0;

 L60376: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47019;
    }
  goto ret0;

 L47019: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47020;
    }
  goto ret0;

 L47020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4405;  /* *avx512f_gathersiv8di */
    }
  goto ret0;

 L60377: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48219;
    }
  goto ret0;

 L48219: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48220;
    }
  goto ret0;

 L48220: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4453;  /* *avx512f_gatherdiv8di */
    }
  goto ret0;

 L60375: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47042;
  goto ret0;

 L47042: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47043;
    }
  goto ret0;

 L47043: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L60378;
    case V8DImode:
      goto L60379;
    default:
      break;
    }
  goto ret0;

 L60378: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47044;
    }
  goto ret0;

 L47044: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47045;
    }
  goto ret0;

 L47045: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4406;  /* *avx512f_gathersiv8di */
    }
  goto ret0;

 L60379: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48244;
    }
  goto ret0;

 L48244: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48245;
    }
  goto ret0;

 L48245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4454;  /* *avx512f_gatherdiv8di */
    }
  goto ret0;

 L47614: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47615;
    }
  goto ret0;

 L47615: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[5] = x2;
      goto L47616;
    }
  goto ret0;

 L47616: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60380;
    case DImode:
      goto L60381;
    default:
      break;
    }
  goto ret0;

 L60380: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47617;
  goto ret0;

 L47617: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47618;
    }
  goto ret0;

 L47618: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L60382;
    case V8DImode:
      goto L60383;
    default:
      break;
    }
  goto ret0;

 L60382: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47619;
    }
  goto ret0;

 L47619: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47620;
    }
  goto ret0;

 L47620: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4429;  /* *avx512f_gathersiv8di_2 */
    }
  goto ret0;

 L60383: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48819;
    }
  goto ret0;

 L48819: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48820;
    }
  goto ret0;

 L48820: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4477;  /* *avx512f_gatherdiv8di_2 */
    }
  goto ret0;

 L60381: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47642;
  goto ret0;

 L47642: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47643;
    }
  goto ret0;

 L47643: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L60384;
    case V8DImode:
      goto L60385;
    default:
      break;
    }
  goto ret0;

 L60384: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47644;
    }
  goto ret0;

 L47644: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47645;
    }
  goto ret0;

 L47645: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4430;  /* *avx512f_gathersiv8di_2 */
    }
  goto ret0;

 L60385: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48844;
    }
  goto ret0;

 L48844: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48845;
    }
  goto ret0;

 L48845: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4478;  /* *avx512f_gatherdiv8di_2 */
    }
  goto ret0;

 L50417: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L50418;
    }
  goto ret0;

 L50418: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L50419;
    }
  goto ret0;

 L50419: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50420;
    }
  goto ret0;

 L50420: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4547;  /* avx512f_compressv8di_mask */
    }
  goto ret0;

 L50585: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L50586;
    }
  goto ret0;

 L50586: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L50587;
    }
  goto ret0;

 L50587: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50588;
    }
  goto ret0;

 L50588: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4571;  /* avx512f_expandv8di_mask */
    }
  goto ret0;

 L51486: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L51487;
    }
  goto ret0;

 L51487: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L51488;
    }
  goto ret0;

 L51488: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L51489;
    }
  goto ret0;

 L51489: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA))
    {
      return 4686;  /* vpamdd52luqv8di */
    }
  goto ret0;

 L51503: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L51504;
    }
  goto ret0;

 L51504: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L51505;
    }
  goto ret0;

 L51505: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L51506;
    }
  goto ret0;

 L51506: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA))
    {
      return 4688;  /* vpamdd52huqv8di */
    }
  goto ret0;

 L60359: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 46LL:
      goto L35718;
    case 143LL:
      goto L41200;
    default:
      break;
    }
  goto ret0;

 L35718: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L35719;
    }
  goto ret0;

 L35719: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L35720;
    }
  goto ret0;

 L35720: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13060 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 343 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3464;  /* avx512f_psadbw */
    }
  goto ret0;

 L41200: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L41201;
    }
  goto ret0;

 L41201: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L41202;
    }
  goto ret0;

 L41202: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 538 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3891;  /* avx512f_permvarv8di */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_70 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11578;
    case UNSPEC:
      goto L60234;
    case FIX:
      goto L21332;
    case UNSIGNED_FIX:
      goto L21364;
    case VEC_SELECT:
      goto L25512;
    case PLUS:
      goto L28487;
    case MINUS:
      goto L28502;
    case MULT:
      goto L29342;
    case ASHIFTRT:
      goto L29979;
    case ASHIFT:
      goto L30234;
    case LSHIFTRT:
      goto L30249;
    case ROTATE:
      goto L30390;
    case ROTATERT:
      goto L30405;
    case SMAX:
      goto L30912;
    case SMIN:
      goto L30927;
    case UMAX:
      goto L30942;
    case UMIN:
      goto L30957;
    case AND:
      goto L32045;
    case IOR:
      goto L32412;
    case XOR:
      goto L32427;
    case VEC_CONCAT:
      goto L34777;
    case ABS:
      goto L37858;
    case SIGN_EXTEND:
      goto L38606;
    case ZERO_EXTEND:
      goto L38638;
    case IF_THEN_ELSE:
      goto L40065;
    case VEC_DUPLICATE:
      goto L41035;
    case CLZ:
      goto L51295;
    default:
     break;
   }
  goto ret0;

 L11578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60252;
 L22040: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L22041;
    }
  goto ret0;

 L60252: ATTRIBUTE_UNUSED_LABEL
  tem = recog_68 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L22040;

 L22041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L22042;
    }
  goto ret0;

 L22042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L22043;
    }
  goto ret0;

 L22043: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 2198;  /* *avx512f_cvtmask2qv8di */
    }
  goto ret0;

 L60234: ATTRIBUTE_UNUSED_LABEL
  return recog_69 (x0, insn, pnum_clobbers);

 L21332: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DFmode:
      goto L60386;
    case V8SFmode:
      goto L60387;
    default:
      break;
    }
  goto ret0;

 L60386: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21333;
    }
  goto ret0;

 L21333: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2103;  /* fix_truncv8dfv8di2 */
    }
  goto ret0;

 L60387: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L21565;
    }
  goto ret0;

 L21565: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2135;  /* fix_truncv8sfv8di2 */
    }
  goto ret0;

 L21364: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DFmode:
      goto L60388;
    case V8SFmode:
      goto L60389;
    default:
      break;
    }
  goto ret0;

 L60388: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21365;
    }
  goto ret0;

 L21365: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2107;  /* ufix_truncv8dfv8di2 */
    }
  goto ret0;

 L60389: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L21597;
    }
  goto ret0;

 L21597: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2139;  /* ufix_truncv8sfv8di2 */
    }
  goto ret0;

 L25512: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16DImode:
      goto L60390;
    case V8DImode:
      goto L60391;
    default:
      break;
    }
  goto ret0;

 L60390: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L25513;
  goto ret0;

 L25513: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L25514;
    }
  goto ret0;

 L25514: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L25515;
    }
  goto ret0;

 L25515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L25516;
  goto ret0;

 L25516: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L60392;
  goto ret0;

 L60392: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L25517;
      case 0LL:
        goto L25599;
      default:
        break;
      }
 L60394: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L34949;
    }
  goto ret0;

 L25517: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L25518;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25518: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L25519;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25519: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L25520;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25520: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L25521;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25521: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L25522;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25522: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L25523;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25523: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 8129 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2499;  /* *avx512f_interleave_highv8di */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25599: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L25600;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25600: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L25601;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25601: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L25602;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L25603;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25603: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L25604;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25604: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L25605;
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L25605: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)]
      && 
#line 8179 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2505;  /* *avx512f_interleave_lowv8di */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L60394;

 L34949: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L34950;
    }
  goto ret0;

 L34950: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L34951;
    }
  goto ret0;

 L34951: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L34952;
    }
  goto ret0;

 L34952: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L34953;
    }
  goto ret0;

 L34953: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L34954;
    }
  goto ret0;

 L34954: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L34955;
    }
  goto ret0;

 L34955: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L34956;
    }
  goto ret0;

 L34956: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11883 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[9]) == (INTVAL (operands[10]) - 1))))
    {
      return 3407;  /* avx512f_shuf_i64x2_1 */
    }
  goto ret0;

 L60391: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L41397;
    }
  goto ret0;

 L41397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L41398;
  goto ret0;

 L41398: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L41399;
    }
  goto ret0;

 L41399: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L41400;
    }
  goto ret0;

 L41400: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L41401;
    }
  goto ret0;

 L41401: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L41402;
    }
  goto ret0;

 L41402: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 534 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3915;  /* avx512f_permv8di_1 */
    }
  goto ret0;

 L28487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L28488;
    }
  goto ret0;

 L28488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L28489;
    }
  goto ret0;

 L28489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V8DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2725;  /* *addv8di3 */
    }
  goto ret0;

 L28502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L28503;
    }
  goto ret0;

 L28503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L28504;
    }
  goto ret0;

 L28504: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V8DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2727;  /* *subv8di3 */
    }
  goto ret0;

 L29342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60395;
  goto ret0;

 L60395: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L29343;
    case SIGN_EXTEND:
      goto L29477;
    case REG:
    case SUBREG:
      goto L60397;
    default:
      goto ret0;
   }
 L60397: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L29746;
    }
  goto ret0;

 L29343: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29344;
  goto ret0;

 L29344: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L29345;
    }
  goto ret0;

 L29345: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L29346;
  goto ret0;

 L29346: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29347;
  goto ret0;

 L29347: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29348;
  goto ret0;

 L29348: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29349;
  goto ret0;

 L29349: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29350;
  goto ret0;

 L29350: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29351;
  goto ret0;

 L29351: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29352;
  goto ret0;

 L29352: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29353;
  goto ret0;

 L29353: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29354;
  goto ret0;

 L29354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L29355;
  goto ret0;

 L29355: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29356;
  goto ret0;

 L29356: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L29357;
    }
  goto ret0;

 L29357: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L29358;
  goto ret0;

 L29358: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29359;
  goto ret0;

 L29359: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29360;
  goto ret0;

 L29360: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29361;
  goto ret0;

 L29361: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29362;
  goto ret0;

 L29362: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29363;
  goto ret0;

 L29363: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29364;
  goto ret0;

 L29364: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29365;
  goto ret0;

 L29365: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)]
      && 
#line 9380 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (MULT, V16SImode, operands)))
    {
      return 2827;  /* *vec_widen_umult_even_v16si */
    }
  goto ret0;

 L29477: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29478;
  goto ret0;

 L29478: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L29479;
    }
  goto ret0;

 L29479: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L29480;
  goto ret0;

 L29480: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29481;
  goto ret0;

 L29481: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29482;
  goto ret0;

 L29482: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29483;
  goto ret0;

 L29483: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29484;
  goto ret0;

 L29484: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29485;
  goto ret0;

 L29485: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29486;
  goto ret0;

 L29486: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29487;
  goto ret0;

 L29487: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L29488;
  goto ret0;

 L29488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L29489;
  goto ret0;

 L29489: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29490;
  goto ret0;

 L29490: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L29491;
    }
  goto ret0;

 L29491: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L29492;
  goto ret0;

 L29492: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29493;
  goto ret0;

 L29493: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29494;
  goto ret0;

 L29494: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29495;
  goto ret0;

 L29495: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29496;
  goto ret0;

 L29496: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L29497;
  goto ret0;

 L29497: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L29498;
  goto ret0;

 L29498: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L29499;
  goto ret0;

 L29499: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)]
      && 
#line 9497 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (MULT, V16SImode, operands)))
    {
      return 2833;  /* *vec_widen_smult_even_v16si */
    }
  goto ret0;

 L29746: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L29747;
    }
  goto ret0;

 L29747: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9728 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 303 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2847;  /* avx512dq_mulv8di3 */
    }
  goto ret0;

 L29979: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60398;
  goto ret0;

 L60398: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L29980;
    }
 L60399: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L44185;
    }
  goto ret0;

 L29980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29981;
    }
  x2 = XEXP (x1, 0);
  goto L60399;

 L29981: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9948 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2879;  /* ashrv8di3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60399;

 L44185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L44186;
    }
  goto ret0;

 L44186: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4256;  /* avx512f_ashrvv8di */
    }
  goto ret0;

 L30234: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60400;
  goto ret0;

 L60400: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30235;
    }
 L60401: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L44335;
    }
  goto ret0;

 L30235: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30236;
    }
  x2 = XEXP (x1, 0);
  goto L60401;

 L30236: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 2913;  /* ashlv8di3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60401;

 L44335: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L44336;
    }
  goto ret0;

 L44336: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 411 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4276;  /* avx512f_ashlvv8di */
    }
  goto ret0;

 L30249: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60402;
  goto ret0;

 L60402: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30250;
    }
 L60403: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L44350;
    }
  goto ret0;

 L30250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30251;
    }
  x2 = XEXP (x1, 0);
  goto L60403;

 L30251: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 2915;  /* lshrv8di3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60403;

 L44350: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L44351;
    }
  goto ret0;

 L44351: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 411 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4278;  /* avx512f_lshrvv8di */
    }
  goto ret0;

 L30390: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60404;
  goto ret0;

 L60404: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30391;
    }
 L60405: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30571;
    }
  goto ret0;

 L30391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L30392;
    }
  x2 = XEXP (x1, 0);
  goto L60405;

 L30392: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2935;  /* avx512f_rolvv8di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60405;

 L30571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30572;
    }
  goto ret0;

 L30572: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2959;  /* avx512f_rolv8di */
    }
  goto ret0;

 L30405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60406;
  goto ret0;

 L60406: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30406;
    }
 L60407: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30586;
    }
  goto ret0;

 L30406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L30407;
    }
  x2 = XEXP (x1, 0);
  goto L60407;

 L30407: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2937;  /* avx512f_rorvv8di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60407;

 L30586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30587;
    }
  goto ret0;

 L30587: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2961;  /* avx512f_rorv8di */
    }
  goto ret0;

 L30912: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30913;
    }
  goto ret0;

 L30913: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L30914;
    }
  goto ret0;

 L30914: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V8DImode, operands)))
    {
      return 3007;  /* *avx512bw_smaxv8di3 */
    }
  goto ret0;

 L30927: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30928;
    }
  goto ret0;

 L30928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L30929;
    }
  goto ret0;

 L30929: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V8DImode, operands)))
    {
      return 3009;  /* *avx512bw_sminv8di3 */
    }
  goto ret0;

 L30942: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30943;
    }
  goto ret0;

 L30943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L30944;
    }
  goto ret0;

 L30944: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V8DImode, operands)))
    {
      return 3011;  /* *avx512bw_umaxv8di3 */
    }
  goto ret0;

 L30957: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L30958;
    }
  goto ret0;

 L30958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L30959;
    }
  goto ret0;

 L30959: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V8DImode, operands)))
    {
      return 3013;  /* *avx512bw_uminv8di3 */
    }
  goto ret0;

 L32045: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60408;
  goto ret0;

 L60408: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32046;
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L32398;
    }
  goto ret0;

 L32046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L32047;
    }
  goto ret0;

 L32047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L32048;
    }
  goto ret0;

 L32048: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3165;  /* *andnotv8di3 */
    }
  goto ret0;

 L32398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L32399;
    }
  goto ret0;

 L32399: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V8DImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3205;  /* *andv8di3 */
    }
  goto ret0;

 L32412: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L32413;
    }
  goto ret0;

 L32413: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L32414;
    }
  goto ret0;

 L32414: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V8DImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3207;  /* *iorv8di3 */
    }
  goto ret0;

 L32427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L32428;
    }
  goto ret0;

 L32428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L32429;
    }
  goto ret0;

 L32429: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V8DImode, operands)) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3209;  /* *xorv8di3 */
    }
  goto ret0;

 L34777: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60410;
  goto ret0;

 L60410: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L34778;
    }
 L60411: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44569;
    }
  goto ret0;

 L34778: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L34779;
  x2 = XEXP (x1, 0);
  goto L60411;

 L34779: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L34780;
    }
  x2 = XEXP (x1, 0);
  goto L60411;

 L34780: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L34781;
  x2 = XEXP (x1, 0);
  goto L60411;

 L34781: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60412;
  x2 = XEXP (x1, 0);
  goto L60411;

 L60412: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 4LL:
        goto L34782;
      case 0LL:
        goto L34834;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  goto L60411;

 L34782: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34783;
  x2 = XEXP (x1, 0);
  goto L60411;

 L34783: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34784;
  x2 = XEXP (x1, 0);
  goto L60411;

 L34784: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 11778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3395;  /* vec_set_lo_v8di */
    }
  x2 = XEXP (x1, 0);
  goto L60411;

 L34834: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34835;
  x2 = XEXP (x1, 0);
  goto L60411;

 L34835: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34836;
  x2 = XEXP (x1, 0);
  goto L60411;

 L34836: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 11793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3399;  /* vec_set_hi_v8di */
    }
  x2 = XEXP (x1, 0);
  goto L60411;

 L44569: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44570;
    }
  goto ret0;

 L44570: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 212 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4309;  /* avx_vec_concatv8di */
    }
  goto ret0;

 L37858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L37859;
    }
  goto ret0;

 L37859: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13855 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3549;  /* *absv8di2 */
    }
  goto ret0;

 L38606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8QImode:
      goto L60414;
    case V8HImode:
      goto L60415;
    case V8SImode:
      goto L60416;
    default:
      break;
    }
  goto ret0;

 L60414: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38607;
  goto ret0;

 L38607: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38608;
    }
  goto ret0;

 L38608: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L38609;
  goto ret0;

 L38609: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38610;
  goto ret0;

 L38610: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38611;
  goto ret0;

 L38611: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38612;
  goto ret0;

 L38612: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38613;
  goto ret0;

 L38613: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38614;
  goto ret0;

 L38614: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38615;
  goto ret0;

 L38615: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38616;
  goto ret0;

 L38616: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 14341 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3641;  /* avx512f_sign_extendv8qiv8di2 */
    }
  goto ret0;

 L60415: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L38759;
    }
  goto ret0;

 L38759: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14379 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3653;  /* avx512f_sign_extendv8hiv8di2 */
    }
  goto ret0;

 L60416: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L38873;
    }
  goto ret0;

 L38873: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3665;  /* avx512f_sign_extendv8siv8di2 */
    }
  goto ret0;

 L38638: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8QImode:
      goto L60417;
    case V8HImode:
      goto L60418;
    case V8SImode:
      goto L60419;
    default:
      break;
    }
  goto ret0;

 L60417: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38639;
  goto ret0;

 L38639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38640;
    }
  goto ret0;

 L38640: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L38641;
  goto ret0;

 L38641: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38642;
  goto ret0;

 L38642: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38643;
  goto ret0;

 L38643: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38644;
  goto ret0;

 L38644: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38645;
  goto ret0;

 L38645: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L38646;
  goto ret0;

 L38646: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L38647;
  goto ret0;

 L38647: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L38648;
  goto ret0;

 L38648: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 14341 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3643;  /* avx512f_zero_extendv8qiv8di2 */
    }
  goto ret0;

 L60418: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L38772;
    }
  goto ret0;

 L38772: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14379 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3655;  /* avx512f_zero_extendv8hiv8di2 */
    }
  goto ret0;

 L60419: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L38886;
    }
  goto ret0;

 L38886: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3667;  /* avx512f_zero_extendv8siv8di2 */
    }
  goto ret0;

 L40065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L40066;
    }
  goto ret0;

 L40066: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L40067;
    }
  goto ret0;

 L40067: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L40068;
    }
  goto ret0;

 L40068: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 193 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3782;  /* xop_pcmov_v8di512 */
    }
  goto ret0;

 L41035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L60420;
    case V8DImode:
      goto L60421;
    case V4DImode:
      goto L60422;
    case V2DImode:
      goto L60424;
    default:
      break;
    }
  goto ret0;

 L60420: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L41036;
    case ZERO_EXTEND:
      goto L42414;
    case REG:
    case SUBREG:
    case MEM:
      goto L60423;
    default:
      goto ret0;
   }
 L60423: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L41978;
    }
  goto ret0;

 L41036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L41037;
    }
  goto ret0;

 L41037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41038;
  goto ret0;

 L41038: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60426;
  goto ret0;

 L60426: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L60428;
  goto ret0;

 L60428: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3868;  /* avx2_pbroadcastv8di */
    }
 L60429: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3931;  /* avx512f_vec_dupv8di */
    }
  goto ret0;

 L42414: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L42415;
    }
  goto ret0;

 L42415: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16935 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD))
    {
      return 4054;  /* avx512cd_maskb_vec_dupv8di */
    }
  goto ret0;

 L41978: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3987;  /* *avx512f_vec_dup_gprv8di */
    }
  goto ret0;

 L60421: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41464;
  goto ret0;

 L41464: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L41465;
    }
  goto ret0;

 L41465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41466;
  goto ret0;

 L41466: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3922;  /* avx512f_vec_dupv8di_1 */
    }
  goto ret0;

 L60422: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L41848;
    }
  goto ret0;

 L41848: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3967;  /* *avx512f_broadcastv8di */
    }
  goto ret0;

 L60424: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L42362;
    }
  goto ret0;

 L42362: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4046;  /* *avx512dq_broadcastv8di_1 */
    }
  goto ret0;

 L51295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L51296;
    }
  goto ret0;

 L51296: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD))
    {
      return 4655;  /* clzv8di2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_71 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L22948;
    case UNSPEC:
      goto L60599;
    case PLUS:
      goto L28524;
    case MINUS:
      goto L28539;
    case MULT:
      goto L29420;
    case ASHIFTRT:
      goto L29956;
    case ASHIFT:
      goto L30151;
    case LSHIFTRT:
      goto L30166;
    case ROTATE:
      goto L30427;
    case ROTATERT:
      goto L30442;
    case SMAX:
      goto L30979;
    case SMIN:
      goto L30994;
    case UMAX:
      goto L31009;
    case UMIN:
      goto L31024;
    case AND:
      goto L32206;
    case IOR:
      goto L32824;
    case XOR:
      goto L32839;
    case ABS:
      goto L37906;
    case SIGN_EXTEND:
      goto L38681;
    case ZERO_EXTEND:
      goto L38705;
    case VEC_DUPLICATE:
      goto L41564;
    case VEC_CONCAT:
      goto L43734;
    case CLZ:
      goto L51314;
    default:
     break;
   }
  goto ret0;

 L22948: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L60610;
    case V4DImode:
      goto L60611;
    default:
      break;
    }
  goto ret0;

 L60610: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L25499;
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L22949;
    }
 L60609: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L23019;
    }
  goto ret0;

 L25499: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L25500;
    }
  goto ret0;

 L25500: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L25501;
    }
  goto ret0;

 L25501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L25502;
  goto ret0;

 L25502: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60612;
  goto ret0;

 L60612: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L25503;
      case 0LL:
        goto L25585;
      default:
        break;
      }
 L60614: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L34873;
    }
  goto ret0;

 L25503: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L25504;
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25504: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L25505;
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25505: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L25506;
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25506: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L25507;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25507: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25508;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25508: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 8113 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 2498;  /* avx2_interleave_highv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25585: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L25586;
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25586: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L25587;
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25587: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L25588;
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25588: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L25589;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25589: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25590;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L25590: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 8163 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 2504;  /* avx2_interleave_lowv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L60614;

 L34873: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L34874;
    }
  goto ret0;

 L34874: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L34875;
    }
  goto ret0;

 L34875: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L34876;
    }
  goto ret0;

 L34876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[7] = x2;
      goto L34877;
    }
  goto ret0;

 L34877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[8] = x2;
      goto L34878;
    }
  goto ret0;

 L34878: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11830 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1)))))
    {
      return 3402;  /* avx512dq_shuf_i64x2_1_mask */
    }
  goto ret0;

 L22949: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22950;
  x3 = XEXP (x2, 0);
  goto L60609;

 L22950: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22951;
  x3 = XEXP (x2, 0);
  goto L60609;

 L22951: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22952;
  x3 = XEXP (x2, 0);
  goto L60609;

 L22952: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22953;
  x3 = XEXP (x2, 0);
  goto L60609;

 L22953: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22954;
  x3 = XEXP (x2, 0);
  goto L60609;

 L22954: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L22955;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60609;

 L22955: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22956;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60609;

 L22956: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1])))))
    {
      return 2271;  /* vec_extract_lo_v8di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60609;

 L23019: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23020;
  goto ret0;

 L23020: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23021;
  goto ret0;

 L23021: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23022;
  goto ret0;

 L23022: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23023;
  goto ret0;

 L23023: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23024;
  goto ret0;

 L23024: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L23025;
    }
  goto ret0;

 L23025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23026;
    }
  goto ret0;

 L23026: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2277;  /* vec_extract_hi_v8di_mask */
    }
  goto ret0;

 L60611: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L41362;
    }
  goto ret0;

 L41362: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L41363;
  goto ret0;

 L41363: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L41364;
    }
  goto ret0;

 L41364: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L41365;
    }
  goto ret0;

 L41365: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L41366;
    }
  goto ret0;

 L41366: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L41367;
    }
  goto ret0;

 L41367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[6] = x2;
      goto L41368;
    }
  goto ret0;

 L41368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L41369;
    }
  goto ret0;

 L41369: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 3912;  /* avx2_permv4di_1_mask */
    }
  goto ret0;

 L60599: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L60615;
    case 3:
      goto L60616;
    case 2:
      goto L60617;
    case 1:
      goto L60621;
    default:
      break;
    }
  goto ret0;

 L60615: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 159)
    goto L24085;
  goto ret0;

 L24085: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L24086;
    }
  goto ret0;

 L24086: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L24087;
    }
  goto ret0;

 L24087: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L24088;
    }
  goto ret0;

 L24088: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24089;
    }
  goto ret0;

 L24089: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DImode))
    {
      operands[5] = x2;
      goto L24090;
    }
 L24163: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24164;
  goto ret0;

 L24090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24091;
    }
  x2 = XEXP (x1, 1);
  goto L24163;

 L24091: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2365;  /* avx512vl_vternlogv4di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24163;

 L24164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24165;
    }
  goto ret0;

 L24165: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7713 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2372;  /* avx512vl_vternlogv4di_mask */
    }
  goto ret0;

 L60616: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 162LL:
      goto L24488;
    case 147LL:
      goto L42772;
    case 149LL:
      goto L43029;
    case 148LL:
      goto L43258;
    case 191LL:
      goto L51528;
    case 192LL:
      goto L51545;
    default:
      break;
    }
  goto ret0;

 L24488: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L24489;
    }
  goto ret0;

 L24489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L24490;
    }
  goto ret0;

 L24490: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L24491;
    }
  goto ret0;

 L24491: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L24492;
    }
  goto ret0;

 L24492: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24493;
    }
  goto ret0;

 L24493: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2411;  /* avx512vl_alignv4di_mask */
    }
  goto ret0;

 L42772: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L42773;
    }
  goto ret0;

 L42773: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L42774;
    }
  goto ret0;

 L42774: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L42775;
    }
  goto ret0;

 L42775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L42776;
    }
  goto ret0;

 L42776: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42777;
    }
  goto ret0;

 L42777: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4100;  /* avx512vl_vpermi2varv4di3_maskz_1 */
    }
  goto ret0;

 L43029: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L43030;
    }
  goto ret0;

 L43030: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L43031;
    }
  goto ret0;

 L43031: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L43032;
    }
  goto ret0;

 L43032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43033;
  goto ret0;

 L43033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43034;
    }
  goto ret0;

 L43034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4129;  /* avx512vl_vpermi2varv4di3_mask */
    }
  goto ret0;

 L43258: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L43259;
    }
  goto ret0;

 L43259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L43260;
    }
  goto ret0;

 L43260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L43261;
    }
  goto ret0;

 L43261: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L43262;
    }
 L43518: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43519;
  goto ret0;

 L43262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43263;
    }
  x2 = XEXP (x1, 1);
  goto L43518;

 L43263: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4154;  /* avx512vl_vpermt2varv4di3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43518;

 L43519: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43520;
    }
  goto ret0;

 L43520: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4183;  /* avx512vl_vpermt2varv4di3_mask */
    }
  goto ret0;

 L51528: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L51529;
    }
  goto ret0;

 L51529: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L51530;
    }
  goto ret0;

 L51530: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L51531;
    }
  goto ret0;

 L51531: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L51532;
    }
 L51612: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L51613;
  goto ret0;

 L51532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51533;
    }
  x2 = XEXP (x1, 1);
  goto L51612;

 L51533: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4691;  /* vpamdd52luqv4di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L51612;

 L51613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51614;
    }
  goto ret0;

 L51614: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18706 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4700;  /* vpamdd52luqv4di_mask */
    }
  goto ret0;

 L51545: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L51546;
    }
  goto ret0;

 L51546: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L51547;
    }
  goto ret0;

 L51547: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L51548;
    }
  goto ret0;

 L51548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L51549;
    }
 L51622: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L51623;
  goto ret0;

 L51549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51550;
    }
  x2 = XEXP (x1, 1);
  goto L51622;

 L51550: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4693;  /* vpamdd52huqv4di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L51622;

 L51623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51624;
    }
  goto ret0;

 L51624: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18706 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4701;  /* vpamdd52huqv4di_mask */
    }
  goto ret0;

 L60617: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 143)
    goto L41237;
  goto ret0;

 L41237: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L41238;
    }
  goto ret0;

 L41238: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L41239;
    }
  goto ret0;

 L41239: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L41240;
    }
  goto ret0;

 L41240: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41241;
    }
  goto ret0;

 L41241: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3896;  /* avx2_permvarv4di_mask */
    }
  goto ret0;

 L60621: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 163)
    goto L51392;
  goto ret0;

 L51392: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L51393;
    }
  goto ret0;

 L51393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L51394;
    }
  goto ret0;

 L51394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51395;
    }
  goto ret0;

 L51395: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4670;  /* conflictv4di_mask */
    }
  goto ret0;

 L28524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L28525;
    }
  goto ret0;

 L28525: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L28526;
    }
  goto ret0;

 L28526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L28527;
    }
  goto ret0;

 L28527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28528;
    }
  goto ret0;

 L28528: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V4DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2730;  /* *addv4di3 */
    }
 L28654: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (PLUS, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2745;  /* *addv4di3_mask */
    }
  goto ret0;

 L28539: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L28540;
    }
  goto ret0;

 L28540: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L28541;
    }
  goto ret0;

 L28541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L28542;
    }
  goto ret0;

 L28542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28543;
    }
  goto ret0;

 L28543: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V4DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2732;  /* *subv4di3 */
    }
 L28663: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (MINUS, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2746;  /* *subv4di3_mask */
    }
  goto ret0;

 L29420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DImode)
    goto L60624;
  goto ret0;

 L60624: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L29421;
    case SIGN_EXTEND:
      goto L29555;
    case REG:
    case SUBREG:
      goto L60626;
    default:
      goto ret0;
   }
 L60626: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L29768;
    }
  goto ret0;

 L29421: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29422;
  goto ret0;

 L29422: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8SImode))
    {
      operands[1] = x5;
      goto L29423;
    }
  goto ret0;

 L29423: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29424;
  goto ret0;

 L29424: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29425;
  goto ret0;

 L29425: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29426;
  goto ret0;

 L29426: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29427;
  goto ret0;

 L29427: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29428;
  goto ret0;

 L29428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L29429;
  goto ret0;

 L29429: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29430;
  goto ret0;

 L29430: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L29431;
    }
  goto ret0;

 L29431: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29432;
  goto ret0;

 L29432: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29433;
  goto ret0;

 L29433: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29434;
  goto ret0;

 L29434: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29435;
  goto ret0;

 L29435: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29436;
  goto ret0;

 L29436: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L29437;
    }
  goto ret0;

 L29437: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29438;
    }
  goto ret0;

 L29438: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL
   && ix86_binary_operator_ok (MULT, V8SImode, operands))))
    {
      return 2830;  /* *vec_widen_umult_even_v8si_mask */
    }
  goto ret0;

 L29555: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29556;
  goto ret0;

 L29556: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8SImode))
    {
      operands[1] = x5;
      goto L29557;
    }
  goto ret0;

 L29557: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29558;
  goto ret0;

 L29558: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29559;
  goto ret0;

 L29559: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29560;
  goto ret0;

 L29560: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29561;
  goto ret0;

 L29561: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29562;
  goto ret0;

 L29562: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29563;
  goto ret0;

 L29563: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29564;
  goto ret0;

 L29564: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L29565;
    }
  goto ret0;

 L29565: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 4)
    goto L29566;
  goto ret0;

 L29566: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29567;
  goto ret0;

 L29567: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29568;
  goto ret0;

 L29568: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29569;
  goto ret0;

 L29569: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 3);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29570;
  goto ret0;

 L29570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L29571;
    }
  goto ret0;

 L29571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29572;
    }
  goto ret0;

 L29572: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9534 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && ix86_binary_operator_ok (MULT, V8SImode, operands))))
    {
      return 2836;  /* *vec_widen_smult_even_v8si_mask */
    }
  goto ret0;

 L29768: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L29769;
    }
  goto ret0;

 L29769: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L29770;
    }
  goto ret0;

 L29770: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29771;
    }
  goto ret0;

 L29771: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9728 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (32 == 64 || TARGET_AVX512VL)) && 
#line 303 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 2850;  /* avx512dq_mulv4di3_mask */
    }
  goto ret0;

 L29956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DImode)
    goto L60627;
  goto ret0;

 L60627: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L29957;
    }
 L60628: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L44177;
    }
  goto ret0;

 L29957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L29958;
    }
  x3 = XEXP (x2, 0);
  goto L60628;

 L29958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L29959;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60628;

 L29959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29960;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60628;

 L29960: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9948 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2876;  /* ashrv4di3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60628;

 L44177: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L44178;
    }
  goto ret0;

 L44178: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L44179;
    }
  goto ret0;

 L44179: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44180;
    }
  goto ret0;

 L44180: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4255;  /* avx2_ashrvv4di_mask */
    }
  goto ret0;

 L30151: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L44372;
    }
  goto ret0;

 L44372: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L44373;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30153;
    }
  goto ret0;

 L44373: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L44374;
    }
  goto ret0;

 L44374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44375;
    }
  goto ret0;

 L44375: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 4281;  /* avx2_ashlvv4di_mask */
    }
  goto ret0;

 L30153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30154;
    }
  goto ret0;

 L30154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30155;
    }
  goto ret0;

 L30155: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 393 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2902;  /* ashlv4di3_mask */
    }
  goto ret0;

 L30166: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L44387;
    }
  goto ret0;

 L44387: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L44388;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30168;
    }
  goto ret0;

 L44388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L44389;
    }
  goto ret0;

 L44389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44390;
    }
  goto ret0;

 L44390: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 4283;  /* avx2_lshrvv4di_mask */
    }
  goto ret0;

 L30168: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30169;
    }
  goto ret0;

 L30169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30170;
    }
  goto ret0;

 L30170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 393 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))))
    {
      return 2904;  /* lshrv4di3_mask */
    }
  goto ret0;

 L30427: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DImode)
    goto L60629;
  goto ret0;

 L60629: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L30428;
    }
 L60630: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L30608;
    }
  goto ret0;

 L30428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L30429;
    }
  x3 = XEXP (x2, 0);
  goto L60630;

 L30429: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30430;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60630;

 L30430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30431;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60630;

 L30431: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2940;  /* avx512vl_rolvv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60630;

 L30608: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30609;
    }
  goto ret0;

 L30609: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30610;
    }
  goto ret0;

 L30610: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30611;
    }
  goto ret0;

 L30611: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2964;  /* avx512vl_rolv4di_mask */
    }
  goto ret0;

 L30442: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DImode)
    goto L60631;
  goto ret0;

 L60631: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L30443;
    }
 L60632: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L30623;
    }
  goto ret0;

 L30443: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L30444;
    }
  x3 = XEXP (x2, 0);
  goto L60632;

 L30444: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30445;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60632;

 L30445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30446;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60632;

 L30446: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2942;  /* avx512vl_rorvv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60632;

 L30623: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30624;
    }
  goto ret0;

 L30624: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30625;
    }
  goto ret0;

 L30625: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30626;
    }
  goto ret0;

 L30626: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2966;  /* avx512vl_rorv4di_mask */
    }
  goto ret0;

 L30979: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L30980;
    }
  goto ret0;

 L30980: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L30981;
    }
  goto ret0;

 L30981: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30982;
    }
  goto ret0;

 L30982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30983;
    }
  goto ret0;

 L30983: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3016;  /* *avx512bw_smaxv4di3_mask */
    }
  goto ret0;

 L30994: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L30995;
    }
  goto ret0;

 L30995: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L30996;
    }
  goto ret0;

 L30996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L30997;
    }
  goto ret0;

 L30997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30998;
    }
  goto ret0;

 L30998: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3018;  /* *avx512bw_sminv4di3_mask */
    }
  goto ret0;

 L31009: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L31010;
    }
  goto ret0;

 L31010: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L31011;
    }
  goto ret0;

 L31011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L31012;
    }
  goto ret0;

 L31012: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31013;
    }
  goto ret0;

 L31013: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3020;  /* *avx512bw_umaxv4di3_mask */
    }
  goto ret0;

 L31024: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L31025;
    }
  goto ret0;

 L31025: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L31026;
    }
  goto ret0;

 L31026: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L31027;
    }
  goto ret0;

 L31027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31028;
    }
  goto ret0;

 L31028: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3022;  /* *avx512bw_uminv4di3_mask */
    }
  goto ret0;

 L32206: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DImode)
    goto L60633;
  goto ret0;

 L60633: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32207;
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L32810;
    }
  goto ret0;

 L32207: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L32208;
    }
  goto ret0;

 L32208: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L32209;
    }
  goto ret0;

 L32209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L32210;
    }
  goto ret0;

 L32210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32211;
    }
  goto ret0;

 L32211: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3184;  /* *andnotv4di3 */
    }
 L32278: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10881 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3191;  /* *andnotv4di3_mask */
    }
  goto ret0;

 L32810: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L32811;
    }
  goto ret0;

 L32811: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L32812;
    }
  goto ret0;

 L32812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32813;
    }
  goto ret0;

 L32813: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V4DImode, operands)) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3260;  /* andv4di3_mask */
    }
  goto ret0;

 L32824: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L32825;
    }
  goto ret0;

 L32825: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L32826;
    }
  goto ret0;

 L32826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L32827;
    }
  goto ret0;

 L32827: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32828;
    }
  goto ret0;

 L32828: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V4DImode, operands)) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3262;  /* iorv4di3_mask */
    }
  goto ret0;

 L32839: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L32840;
    }
  goto ret0;

 L32840: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L32841;
    }
  goto ret0;

 L32841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L32842;
    }
  goto ret0;

 L32842: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32843;
    }
  goto ret0;

 L32843: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V4DImode, operands)) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 3264;  /* xorv4di3_mask */
    }
  goto ret0;

 L37906: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L37907;
    }
  goto ret0;

 L37907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L37908;
    }
  goto ret0;

 L37908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L37909;
    }
  goto ret0;

 L37909: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3556;  /* absv4di2_mask */
    }
  goto ret0;

 L38681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4QImode:
      goto L60635;
    case V4HImode:
      goto L60636;
    case V4SImode:
      goto L60637;
    default:
      break;
    }
  goto ret0;

 L60635: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38682;
  goto ret0;

 L38682: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38683;
    }
  goto ret0;

 L38683: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38684;
  goto ret0;

 L38684: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38685;
  goto ret0;

 L38685: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38686;
  goto ret0;

 L38686: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38687;
  goto ret0;

 L38687: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38688;
  goto ret0;

 L38688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L38689;
    }
  goto ret0;

 L38689: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38690;
    }
  goto ret0;

 L38690: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14354 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3646;  /* avx2_sign_extendv4qiv4di2_mask */
    }
  goto ret0;

 L60636: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38796;
  goto ret0;

 L38796: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L38797;
    }
  goto ret0;

 L38797: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38798;
  goto ret0;

 L38798: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38799;
  goto ret0;

 L38799: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38800;
  goto ret0;

 L38800: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38801;
  goto ret0;

 L38801: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38802;
  goto ret0;

 L38802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L38803;
    }
  goto ret0;

 L38803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38804;
    }
  goto ret0;

 L38804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3658;  /* avx2_sign_extendv4hiv4di2_mask */
    }
  goto ret0;

 L60637: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L38905;
    }
  goto ret0;

 L38905: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L38906;
    }
  goto ret0;

 L38906: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38907;
    }
  goto ret0;

 L38907: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3670;  /* avx2_sign_extendv4siv4di2_mask */
    }
  goto ret0;

 L38705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4QImode:
      goto L60638;
    case V4HImode:
      goto L60639;
    case V4SImode:
      goto L60640;
    default:
      break;
    }
  goto ret0;

 L60638: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38706;
  goto ret0;

 L38706: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38707;
    }
  goto ret0;

 L38707: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38708;
  goto ret0;

 L38708: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38709;
  goto ret0;

 L38709: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38710;
  goto ret0;

 L38710: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38711;
  goto ret0;

 L38711: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38712;
  goto ret0;

 L38712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L38713;
    }
  goto ret0;

 L38713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38714;
    }
  goto ret0;

 L38714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14354 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3648;  /* avx2_zero_extendv4qiv4di2_mask */
    }
  goto ret0;

 L60639: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38820;
  goto ret0;

 L38820: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L38821;
    }
  goto ret0;

 L38821: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L38822;
  goto ret0;

 L38822: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38823;
  goto ret0;

 L38823: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38824;
  goto ret0;

 L38824: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38825;
  goto ret0;

 L38825: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L38826;
  goto ret0;

 L38826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L38827;
    }
  goto ret0;

 L38827: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38828;
    }
  goto ret0;

 L38828: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3660;  /* avx2_zero_extendv4hiv4di2_mask */
    }
  goto ret0;

 L60640: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L38918;
    }
  goto ret0;

 L38918: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L38919;
    }
  goto ret0;

 L38919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38920;
    }
  goto ret0;

 L38920: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && TARGET_AVX512VL)))
    {
      return 3672;  /* avx2_zero_extendv4siv4di2_mask */
    }
  goto ret0;

 L41564: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case DImode:
      goto L60641;
    case V2DImode:
      goto L60643;
    default:
      break;
    }
  goto ret0;

 L60641: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41565;
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L41997;
    }
  goto ret0;

 L41565: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L41566;
    }
  goto ret0;

 L41566: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41567;
  goto ret0;

 L41567: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41568;
  goto ret0;

 L41568: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L41569;
    }
  goto ret0;

 L41569: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41570;
    }
  goto ret0;

 L41570: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3934;  /* avx512vl_vec_dupv4di_mask */
    }
  goto ret0;

 L41997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L41998;
    }
  goto ret0;

 L41998: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41999;
    }
  goto ret0;

 L41999: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3990;  /* avx512vl_vec_dup_gprv4di_mask */
    }
  goto ret0;

 L60643: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L42394;
    }
  goto ret0;

 L42394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L42395;
    }
  goto ret0;

 L42395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42396;
    }
  goto ret0;

 L42396: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16915 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4051;  /* avx512dq_broadcastv4di_mask_1 */
    }
  goto ret0;

 L43734: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L60645;
  goto ret0;

 L60645: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L43780;
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L43735;
    }
  goto ret0;

 L43780: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L43781;
    }
  goto ret0;

 L43781: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L43782;
  goto ret0;

 L43782: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43783;
  goto ret0;

 L43783: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43784;
  goto ret0;

 L43784: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L43785;
    }
  goto ret0;

 L43785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L43786;
    }
  goto ret0;

 L43786: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43787;
    }
  goto ret0;

 L43787: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4212;  /* vec_set_hi_v4di_mask */
    }
  goto ret0;

 L43735: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L43736;
  goto ret0;

 L43736: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L43737;
    }
  goto ret0;

 L43737: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L43738;
  goto ret0;

 L43738: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43739;
  goto ret0;

 L43739: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43740;
  goto ret0;

 L43740: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L43741;
    }
  goto ret0;

 L43741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43742;
    }
  goto ret0;

 L43742: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4208;  /* vec_set_lo_v4di_mask */
    }
  goto ret0;

 L51314: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L51315;
    }
  goto ret0;

 L51315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L51316;
    }
  goto ret0;

 L51316: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51317;
    }
  goto ret0;

 L51317: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4658;  /* clzv4di2_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_72 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 4:
      goto L60646;
    case 3:
      goto L60647;
    case 2:
      goto L60648;
    case 1:
      goto L60649;
    default:
      break;
    }
  goto ret0;

 L60646: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 159LL:
      goto L24076;
    case 145LL:
      goto L44855;
    default:
      break;
    }
  goto ret0;

 L24076: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L24077;
    }
  goto ret0;

 L24077: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L24078;
    }
  goto ret0;

 L24078: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L24079;
    }
  goto ret0;

 L24079: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24080;
    }
  goto ret0;

 L24080: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2364;  /* avx512vl_vternlogv4di */
    }
  goto ret0;

 L44855: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44856;
    }
  if (GET_CODE (x2) == PC)
    goto L45320;
  goto ret0;

 L44856: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[7] = x2;
      goto L44857;
    }
  goto ret0;

 L44857: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60662;
    case DImode:
      goto L60663;
    default:
      break;
    }
  goto ret0;

 L60662: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44858;
  goto ret0;

 L44858: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L44859;
    }
  goto ret0;

 L44859: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60664;
    case V4DImode:
      goto L60665;
    default:
      break;
    }
  goto ret0;

 L60664: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44860;
    }
  goto ret0;

 L44860: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44861;
    }
  goto ret0;

 L44861: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44862;
  goto ret0;

 L44862: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44863;
  goto ret0;

 L44863: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[5] = x2;
      goto L44864;
    }
  goto ret0;

 L44864: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4333;  /* *avx2_gathersiv4di */
    }
  goto ret0;

 L60665: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L45788;
    }
  goto ret0;

 L45788: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45789;
    }
  goto ret0;

 L45789: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45790;
  goto ret0;

 L45790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45791;
  goto ret0;

 L45791: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[5] = x2;
      goto L45792;
    }
  goto ret0;

 L45792: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4365;  /* *avx2_gatherdiv4di */
    }
  goto ret0;

 L60663: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44887;
  goto ret0;

 L44887: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L44888;
    }
  goto ret0;

 L44888: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60666;
    case V4DImode:
      goto L60667;
    default:
      break;
    }
  goto ret0;

 L60666: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44889;
    }
  goto ret0;

 L44889: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44890;
    }
  goto ret0;

 L44890: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44891;
  goto ret0;

 L44891: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44892;
  goto ret0;

 L44892: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[5] = x2;
      goto L44893;
    }
  goto ret0;

 L44893: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4334;  /* *avx2_gathersiv4di */
    }
  goto ret0;

 L60667: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L45817;
    }
  goto ret0;

 L45817: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45818;
    }
  goto ret0;

 L45818: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45819;
  goto ret0;

 L45819: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45820;
  goto ret0;

 L45820: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[5] = x2;
      goto L45821;
    }
  goto ret0;

 L45821: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4366;  /* *avx2_gatherdiv4di */
    }
  goto ret0;

 L45320: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[6] = x2;
      goto L45321;
    }
  goto ret0;

 L45321: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60668;
    case DImode:
      goto L60669;
    default:
      break;
    }
  goto ret0;

 L60668: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45322;
  goto ret0;

 L45322: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45323;
    }
  goto ret0;

 L45323: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60670;
    case V4DImode:
      goto L60671;
    default:
      break;
    }
  goto ret0;

 L60670: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45324;
    }
  goto ret0;

 L45324: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45325;
    }
  goto ret0;

 L45325: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45326;
  goto ret0;

 L45326: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45327;
  goto ret0;

 L45327: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L45328;
    }
  goto ret0;

 L45328: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4349;  /* *avx2_gathersiv4di_2 */
    }
  goto ret0;

 L60671: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46252;
    }
  goto ret0;

 L46252: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46253;
    }
  goto ret0;

 L46253: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46254;
  goto ret0;

 L46254: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46255;
  goto ret0;

 L46255: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L46256;
    }
  goto ret0;

 L46256: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4381;  /* *avx2_gatherdiv4di_2 */
    }
  goto ret0;

 L60669: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45351;
  goto ret0;

 L45351: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45352;
    }
  goto ret0;

 L45352: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60672;
    case V4DImode:
      goto L60673;
    default:
      break;
    }
  goto ret0;

 L60672: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45353;
    }
  goto ret0;

 L45353: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45354;
    }
  goto ret0;

 L45354: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45355;
  goto ret0;

 L45355: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45356;
  goto ret0;

 L45356: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L45357;
    }
  goto ret0;

 L45357: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4350;  /* *avx2_gathersiv4di_2 */
    }
  goto ret0;

 L60673: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46281;
    }
  goto ret0;

 L46281: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46282;
    }
  goto ret0;

 L46282: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46283;
  goto ret0;

 L46283: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46284;
  goto ret0;

 L46284: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DImode))
    {
      operands[4] = x2;
      goto L46285;
    }
  goto ret0;

 L46285: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4382;  /* *avx2_gatherdiv4di_2 */
    }
  goto ret0;

 L60647: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 162LL:
      goto L24480;
    case 144LL:
      goto L41442;
    case 147LL:
      goto L42764;
    case 148LL:
      goto L43250;
    case 145LL:
      goto L47213;
    case 164LL:
      goto L50445;
    case 166LL:
      goto L50613;
    case 191LL:
      goto L51520;
    case 192LL:
      goto L51537;
    default:
      break;
    }
  goto ret0;

 L24480: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L24481;
    }
  goto ret0;

 L24481: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L24482;
    }
  goto ret0;

 L24482: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24483;
    }
  goto ret0;

 L24483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2410;  /* *avx512vl_alignv4di */
    }
  goto ret0;

 L41442: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L41443;
    }
  goto ret0;

 L41443: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L41444;
    }
  goto ret0;

 L41444: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L41445;
    }
  goto ret0;

 L41445: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16610 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3919;  /* avx2_permv2ti */
    }
  goto ret0;

 L42764: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L42765;
    }
  goto ret0;

 L42765: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L42766;
    }
  goto ret0;

 L42766: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L42767;
    }
  goto ret0;

 L42767: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4099;  /* avx512vl_vpermi2varv4di3 */
    }
  goto ret0;

 L43250: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L43251;
    }
  goto ret0;

 L43251: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L43252;
    }
  goto ret0;

 L43252: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L43253;
    }
  goto ret0;

 L43253: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4153;  /* avx512vl_vpermt2varv4di3 */
    }
  goto ret0;

 L47213: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L47214;
    }
  if (GET_CODE (x2) == PC)
    goto L47814;
  goto ret0;

 L47214: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47215;
    }
  goto ret0;

 L47215: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[6] = x2;
      goto L47216;
    }
  goto ret0;

 L47216: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60674;
    case DImode:
      goto L60675;
    default:
      break;
    }
  goto ret0;

 L60674: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47217;
  goto ret0;

 L47217: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47218;
    }
  goto ret0;

 L47218: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60676;
    case V4DImode:
      goto L60677;
    default:
      break;
    }
  goto ret0;

 L60676: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47219;
    }
  goto ret0;

 L47219: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47220;
    }
  goto ret0;

 L47220: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4413;  /* *avx512f_gathersiv4di */
    }
  goto ret0;

 L60677: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48419;
    }
  goto ret0;

 L48419: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48420;
    }
  goto ret0;

 L48420: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4461;  /* *avx512f_gatherdiv4di */
    }
  goto ret0;

 L60675: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47242;
  goto ret0;

 L47242: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47243;
    }
  goto ret0;

 L47243: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60678;
    case V4DImode:
      goto L60679;
    default:
      break;
    }
  goto ret0;

 L60678: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47244;
    }
  goto ret0;

 L47244: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47245;
    }
  goto ret0;

 L47245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4414;  /* *avx512f_gathersiv4di */
    }
  goto ret0;

 L60679: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48444;
    }
  goto ret0;

 L48444: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48445;
    }
  goto ret0;

 L48445: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4462;  /* *avx512f_gatherdiv4di */
    }
  goto ret0;

 L47814: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47815;
    }
  goto ret0;

 L47815: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[5] = x2;
      goto L47816;
    }
  goto ret0;

 L47816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60680;
    case DImode:
      goto L60681;
    default:
      break;
    }
  goto ret0;

 L60680: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47817;
  goto ret0;

 L47817: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47818;
    }
  goto ret0;

 L47818: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60682;
    case V4DImode:
      goto L60683;
    default:
      break;
    }
  goto ret0;

 L60682: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47819;
    }
  goto ret0;

 L47819: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47820;
    }
  goto ret0;

 L47820: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4437;  /* *avx512f_gathersiv4di_2 */
    }
  goto ret0;

 L60683: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L49019;
    }
  goto ret0;

 L49019: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49020;
    }
  goto ret0;

 L49020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4485;  /* *avx512f_gatherdiv4di_2 */
    }
  goto ret0;

 L60681: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47842;
  goto ret0;

 L47842: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47843;
    }
  goto ret0;

 L47843: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60684;
    case V4DImode:
      goto L60685;
    default:
      break;
    }
  goto ret0;

 L60684: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47844;
    }
  goto ret0;

 L47844: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47845;
    }
  goto ret0;

 L47845: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4438;  /* *avx512f_gathersiv4di_2 */
    }
  goto ret0;

 L60685: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L49044;
    }
  goto ret0;

 L49044: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49045;
    }
  goto ret0;

 L49045: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4486;  /* *avx512f_gatherdiv4di_2 */
    }
  goto ret0;

 L50445: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L50446;
    }
  goto ret0;

 L50446: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L50447;
    }
  goto ret0;

 L50447: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50448;
    }
  goto ret0;

 L50448: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4551;  /* avx512vl_compressv4di_mask */
    }
  goto ret0;

 L50613: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L50614;
    }
  goto ret0;

 L50614: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L50615;
    }
  goto ret0;

 L50615: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50616;
    }
  goto ret0;

 L50616: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4575;  /* avx512vl_expandv4di_mask */
    }
  goto ret0;

 L51520: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L51521;
    }
  goto ret0;

 L51521: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L51522;
    }
  goto ret0;

 L51522: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L51523;
    }
  goto ret0;

 L51523: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4690;  /* vpamdd52luqv4di */
    }
  goto ret0;

 L51537: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L51538;
    }
  goto ret0;

 L51538: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L51539;
    }
  goto ret0;

 L51539: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L51540;
    }
  goto ret0;

 L51540: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4692;  /* vpamdd52huqv4di */
    }
  goto ret0;

 L60648: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 46LL:
      goto L35724;
    case 143LL:
      goto L41230;
    case 42LL:
      goto L44040;
    default:
      break;
    }
  goto ret0;

 L35724: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L35725;
    }
  goto ret0;

 L35725: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[2] = x2;
      goto L35726;
    }
  goto ret0;

 L35726: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13060 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 343 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3465;  /* avx2_psadbw */
    }
  goto ret0;

 L41230: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L41231;
    }
  goto ret0;

 L41231: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L41232;
    }
  goto ret0;

 L41232: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3895;  /* avx2_permvarv4di */
    }
  goto ret0;

 L44040: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44041;
    }
  goto ret0;

 L44041: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44042;
    }
  goto ret0;

 L44042: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4234;  /* avx2_maskloadq256 */
    }
  goto ret0;

 L60649: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 117LL:
      goto L38124;
    case 163LL:
      goto L51386;
    default:
      break;
    }
  goto ret0;

 L38124: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L38125;
    }
  goto ret0;

 L38125: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14078 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3588;  /* avx2_movntdqa */
    }
  goto ret0;

 L51386: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L51387;
    }
  goto ret0;

 L51387: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4669;  /* *conflictv4di */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_73 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22947;
    case UNSPEC:
      goto L60552;
    case VEC_SELECT:
      goto L25486;
    case PLUS:
      goto L28517;
    case MINUS:
      goto L28532;
    case MULT:
      goto L29400;
    case ASHIFTRT:
      goto L29949;
    case ASHIFT:
      goto L30144;
    case LSHIFTRT:
      goto L30159;
    case ROTATE:
      goto L30420;
    case ROTATERT:
      goto L30435;
    case SMAX:
      goto L30972;
    case SMIN:
      goto L30987;
    case UMAX:
      goto L31002;
    case UMIN:
      goto L31017;
    case EQ:
      goto L31614;
    case GT:
      goto L31836;
    case AND:
      goto L32198;
    case IOR:
      goto L32817;
    case XOR:
      goto L32832;
    case ABS:
      goto L37863;
    case SIGN_EXTEND:
      goto L38670;
    case ZERO_EXTEND:
      goto L38694;
    case IF_THEN_ELSE:
      goto L40072;
    case VEC_DUPLICATE:
      goto L41098;
    case VEC_CONCAT:
      goto L42124;
    case CLZ:
      goto L51308;
    default:
     break;
   }
  goto ret0;

 L22947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60568;
  goto ret0;

 L60568: ATTRIBUTE_UNUSED_LABEL
  return recog_71 (x0, insn, pnum_clobbers);

 L60552: ATTRIBUTE_UNUSED_LABEL
  return recog_72 (x0, insn, pnum_clobbers);

 L25486: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DImode:
      goto L60686;
    case V4DImode:
      goto L60687;
    default:
      break;
    }
  goto ret0;

 L60686: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L25487;
  goto ret0;

 L25487: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L25488;
    }
  goto ret0;

 L25488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L25489;
    }
  goto ret0;

 L25489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L25490;
  goto ret0;

 L25490: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L60688;
  goto ret0;

 L60688: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L25491;
      case 0LL:
        goto L25573;
      default:
        break;
      }
 L60690: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L34860;
    }
  goto ret0;

 L25491: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L25492;
  x3 = XVECEXP (x2, 0, 0);
  goto L60690;

 L25492: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L25493;
  x3 = XVECEXP (x2, 0, 0);
  goto L60690;

 L25493: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 8113 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 2497;  /* avx2_interleave_highv4di */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L60690;

 L25573: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L25574;
  x3 = XVECEXP (x2, 0, 0);
  goto L60690;

 L25574: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L25575;
  x3 = XVECEXP (x2, 0, 0);
  goto L60690;

 L25575: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)]
      && 
#line 8163 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 2503;  /* avx2_interleave_lowv4di */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L60690;

 L34860: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L34861;
    }
  goto ret0;

 L34861: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L34862;
    }
  goto ret0;

 L34862: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L34863;
    }
  goto ret0;

 L34863: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11830 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1))))
    {
      return 3401;  /* *avx512dq_shuf_i64x2_1 */
    }
  goto ret0;

 L60687: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L41351;
    }
  goto ret0;

 L41351: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L41352;
  goto ret0;

 L41352: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L41353;
    }
  goto ret0;

 L41353: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L41354;
    }
  goto ret0;

 L41354: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L41355;
    }
  goto ret0;

 L41355: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L41356;
    }
  goto ret0;

 L41356: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3911;  /* avx2_permv4di_1 */
    }
  goto ret0;

 L28517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L28518;
    }
  goto ret0;

 L28518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L28519;
    }
  goto ret0;

 L28519: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V4DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2729;  /* *addv4di3 */
    }
  goto ret0;

 L28532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L28533;
    }
  goto ret0;

 L28533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L28534;
    }
  goto ret0;

 L28534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V4DImode, operands)) && 
#line 287 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2731;  /* *subv4di3 */
    }
  goto ret0;

 L29400: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60691;
  goto ret0;

 L60691: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L29401;
    case SIGN_EXTEND:
      goto L29535;
    case REG:
    case SUBREG:
      goto L60693;
    default:
      goto ret0;
   }
 L60693: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L29761;
    }
  goto ret0;

 L29401: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29402;
  goto ret0;

 L29402: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L29403;
    }
  goto ret0;

 L29403: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L29404;
  goto ret0;

 L29404: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29405;
  goto ret0;

 L29405: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29406;
  goto ret0;

 L29406: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29407;
  goto ret0;

 L29407: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29408;
  goto ret0;

 L29408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L29409;
  goto ret0;

 L29409: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29410;
  goto ret0;

 L29410: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L29411;
    }
  goto ret0;

 L29411: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L29412;
  goto ret0;

 L29412: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29413;
  goto ret0;

 L29413: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29414;
  goto ret0;

 L29414: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29415;
  goto ret0;

 L29415: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)]
      && 
#line 9417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1
   && ix86_binary_operator_ok (MULT, V8SImode, operands)))
    {
      return 2829;  /* *vec_widen_umult_even_v8si */
    }
  goto ret0;

 L29535: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29536;
  goto ret0;

 L29536: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L29537;
    }
  goto ret0;

 L29537: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L29538;
  goto ret0;

 L29538: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29539;
  goto ret0;

 L29539: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29540;
  goto ret0;

 L29540: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29541;
  goto ret0;

 L29541: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L29542;
  goto ret0;

 L29542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L29543;
  goto ret0;

 L29543: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29544;
  goto ret0;

 L29544: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L29545;
    }
  goto ret0;

 L29545: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L29546;
  goto ret0;

 L29546: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29547;
  goto ret0;

 L29547: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29548;
  goto ret0;

 L29548: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L29549;
  goto ret0;

 L29549: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)]
      && 
#line 9534 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   && ix86_binary_operator_ok (MULT, V8SImode, operands)))
    {
      return 2835;  /* *vec_widen_smult_even_v8si */
    }
  goto ret0;

 L29761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L29762;
    }
  goto ret0;

 L29762: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9728 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 303 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 2849;  /* avx512dq_mulv4di3 */
    }
  goto ret0;

 L29949: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60694;
  goto ret0;

 L60694: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L29950;
    }
 L60695: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44170;
    }
  goto ret0;

 L29950: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L29951;
    }
  x2 = XEXP (x1, 0);
  goto L60695;

 L29951: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9948 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2875;  /* ashrv4di3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60695;

 L44170: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44171;
    }
  goto ret0;

 L44171: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4254;  /* avx2_ashrvv4di */
    }
  goto ret0;

 L30144: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44365;
    }
  goto ret0;

 L44365: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44366;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30146;
    }
  goto ret0;

 L44366: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4280;  /* avx2_ashlvv4di */
    }
  goto ret0;

 L30146: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1) && 
#line 393 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2901;  /* ashlv4di3 */
    }
  goto ret0;

 L30159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44380;
    }
  goto ret0;

 L44380: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44381;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30161;
    }
  goto ret0;

 L44381: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4282;  /* avx2_lshrvv4di */
    }
  goto ret0;

 L30161: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1) && 
#line 393 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2903;  /* lshrv4di3 */
    }
  goto ret0;

 L30420: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60696;
  goto ret0;

 L60696: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L30421;
    }
 L60697: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L30601;
    }
  goto ret0;

 L30421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L30422;
    }
  x2 = XEXP (x1, 0);
  goto L60697;

 L30422: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2939;  /* avx512vl_rolvv4di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60697;

 L30601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30602;
    }
  goto ret0;

 L30602: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2963;  /* avx512vl_rolv4di */
    }
  goto ret0;

 L30435: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60698;
  goto ret0;

 L60698: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L30436;
    }
 L60699: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L30616;
    }
  goto ret0;

 L30436: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L30437;
    }
  x2 = XEXP (x1, 0);
  goto L60699;

 L30437: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2941;  /* avx512vl_rorvv4di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60699;

 L30616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30617;
    }
  goto ret0;

 L30617: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2965;  /* avx512vl_rorv4di */
    }
  goto ret0;

 L30972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L30973;
    }
  goto ret0;

 L30973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L30974;
    }
  goto ret0;

 L30974: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3015;  /* *avx512bw_smaxv4di3 */
    }
  goto ret0;

 L30987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L30988;
    }
  goto ret0;

 L30988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L30989;
    }
  goto ret0;

 L30989: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3017;  /* *avx512bw_sminv4di3 */
    }
  goto ret0;

 L31002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L31003;
    }
  goto ret0;

 L31003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L31004;
    }
  goto ret0;

 L31004: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3019;  /* *avx512bw_umaxv4di3 */
    }
  goto ret0;

 L31017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L31018;
    }
  goto ret0;

 L31018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L31019;
    }
  goto ret0;

 L31019: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3021;  /* *avx512bw_uminv4di3 */
    }
  goto ret0;

 L31614: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L31615;
    }
  goto ret0;

 L31615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L31616;
    }
  goto ret0;

 L31616: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10383 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && ix86_binary_operator_ok (EQ, V4DImode, operands)))
    {
      return 3102;  /* *avx2_eqv4di3 */
    }
  goto ret0;

 L31836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L31837;
    }
  goto ret0;

 L31837: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L31838;
    }
  goto ret0;

 L31838: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3135;  /* avx2_gtv4di3 */
    }
  goto ret0;

 L32198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60700;
  goto ret0;

 L60700: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32199;
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L32803;
    }
  goto ret0;

 L32199: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L32200;
    }
  goto ret0;

 L32200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L32201;
    }
  goto ret0;

 L32201: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3183;  /* *andnotv4di3 */
    }
  goto ret0;

 L32803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L32804;
    }
  goto ret0;

 L32804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V4DImode, operands)) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3259;  /* *andv4di3 */
    }
  goto ret0;

 L32817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L32818;
    }
  goto ret0;

 L32818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L32819;
    }
  goto ret0;

 L32819: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V4DImode, operands)) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3261;  /* *iorv4di3 */
    }
  goto ret0;

 L32832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L32833;
    }
  goto ret0;

 L32833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L32834;
    }
  goto ret0;

 L32834: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V4DImode, operands)) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3263;  /* *xorv4di3 */
    }
  goto ret0;

 L37863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L37864;
    }
  goto ret0;

 L37864: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13855 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3550;  /* *absv4di2 */
    }
  goto ret0;

 L38670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4QImode:
      goto L60702;
    case V4HImode:
      goto L60703;
    case V4SImode:
      goto L60704;
    default:
      break;
    }
  goto ret0;

 L60702: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38671;
  goto ret0;

 L38671: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38672;
    }
  goto ret0;

 L38672: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38673;
  goto ret0;

 L38673: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38674;
  goto ret0;

 L38674: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38675;
  goto ret0;

 L38675: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38676;
  goto ret0;

 L38676: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14354 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3645;  /* avx2_sign_extendv4qiv4di2 */
    }
  goto ret0;

 L60703: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38785;
  goto ret0;

 L38785: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38786;
    }
  goto ret0;

 L38786: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38787;
  goto ret0;

 L38787: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38788;
  goto ret0;

 L38788: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38789;
  goto ret0;

 L38789: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38790;
  goto ret0;

 L38790: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3657;  /* avx2_sign_extendv4hiv4di2 */
    }
  goto ret0;

 L60704: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L38899;
    }
  goto ret0;

 L38899: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3669;  /* avx2_sign_extendv4siv4di2 */
    }
  goto ret0;

 L38694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4QImode:
      goto L60705;
    case V4HImode:
      goto L60706;
    case V4SImode:
      goto L60707;
    default:
      break;
    }
  goto ret0;

 L60705: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38695;
  goto ret0;

 L38695: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38696;
    }
  goto ret0;

 L38696: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38697;
  goto ret0;

 L38697: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38698;
  goto ret0;

 L38698: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38699;
  goto ret0;

 L38699: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38700;
  goto ret0;

 L38700: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14354 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3647;  /* avx2_zero_extendv4qiv4di2 */
    }
  goto ret0;

 L60706: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38809;
  goto ret0;

 L38809: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38810;
    }
  goto ret0;

 L38810: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L38811;
  goto ret0;

 L38811: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38812;
  goto ret0;

 L38812: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38813;
  goto ret0;

 L38813: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L38814;
  goto ret0;

 L38814: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 14392 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3659;  /* avx2_zero_extendv4hiv4di2 */
    }
  goto ret0;

 L60707: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L38912;
    }
  goto ret0;

 L38912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3671;  /* avx2_zero_extendv4siv4di2 */
    }
  goto ret0;

 L40072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L40073;
    }
  goto ret0;

 L40073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L40074;
    }
  goto ret0;

 L40074: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L40075;
    }
  goto ret0;

 L40075: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 193 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3783;  /* xop_pcmov_v4di256 */
    }
  goto ret0;

 L41098: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L60708;
    case V2DImode:
      goto L60710;
    default:
      break;
    }
  goto ret0;

 L60708: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L41099;
    case ZERO_EXTEND:
      goto L42420;
    case REG:
    case SUBREG:
    case MEM:
      goto L60709;
    default:
      goto ret0;
   }
 L60709: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L41991;
    }
  goto ret0;

 L41099: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2DImode:
      goto L60712;
    case V4DImode:
      goto L60713;
    default:
      break;
    }
  goto ret0;

 L60712: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L41100;
    }
  goto ret0;

 L41100: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41101;
  goto ret0;

 L41101: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60714;
  goto ret0;

 L60714: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L60716;
  goto ret0;

 L60716: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3877;  /* avx2_pbroadcastv4di */
    }
 L60717: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3933;  /* avx512vl_vec_dupv4di */
    }
  goto ret0;

 L60713: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L41135;
    }
  goto ret0;

 L41135: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41136;
  goto ret0;

 L41136: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16503 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3882;  /* avx2_pbroadcastv4di_1 */
    }
  goto ret0;

 L42420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L42421;
    }
  goto ret0;

 L42421: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16935 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4055;  /* avx512cd_maskb_vec_dupv4di */
    }
  goto ret0;

 L41991: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3989;  /* *avx512vl_vec_dup_gprv4di */
    }
 L42170: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4020;  /* vec_dupv4di */
    }
  goto ret0;

 L60710: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L42388;
    }
  goto ret0;

 L42388: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16915 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4050;  /* *avx512dq_broadcastv4di_1 */
    }
  goto ret0;

 L42124: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L60721;
  goto ret0;

 L60721: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L43769;
  if (memory_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L42125;
    }
 L60719: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L42195;
    }
 L60720: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L43725;
    }
 L60722: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44533;
    }
  goto ret0;

 L43769: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L43770;
    }
  goto ret0;

 L43770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L43771;
  goto ret0;

 L43771: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43772;
  goto ret0;

 L43772: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43773;
  goto ret0;

 L43773: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L43774;
    }
  goto ret0;

 L43774: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4211;  /* vec_set_hi_v4di */
    }
  goto ret0;

 L42125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16768 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 4011;  /* avx2_vbroadcasti128_v4di */
    }
  x2 = XEXP (x1, 0);
  goto L60719;

 L42195: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16851 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4025;  /* avx_vbroadcastf128_v4di */
    }
  x2 = XEXP (x1, 0);
  goto L60720;

 L43725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L43726;
  x2 = XEXP (x1, 0);
  goto L60722;

 L43726: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L43727;
    }
  x2 = XEXP (x1, 0);
  goto L60722;

 L43727: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L43728;
  x2 = XEXP (x1, 0);
  goto L60722;

 L43728: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43729;
  x2 = XEXP (x1, 0);
  goto L60722;

 L43729: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 17527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4207;  /* vec_set_lo_v4di */
    }
  x2 = XEXP (x1, 0);
  goto L60722;

 L44533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44534;
    }
  goto ret0;

 L44534: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4303;  /* avx_vec_concatv4di */
    }
  goto ret0;

 L51308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L51309;
    }
  goto ret0;

 L51309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4657;  /* clzv4di2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_74 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V4DImode))
    {
      operands[5] = x1;
      goto L49587;
    }
 L57060: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4DImode))
    {
      operands[0] = x1;
      goto L22937;
    }
 L57075: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4DImode))
    {
      operands[0] = x1;
      goto L11584;
    }
 L57093: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4DImode))
    {
      operands[0] = x1;
      goto L11836;
    }
 L57121: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4DImode))
    {
      operands[0] = x1;
      goto L22946;
    }
  goto ret0;

 L49587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L60442;
    case DImode:
      goto L60443;
    default:
      break;
    }
  goto L57060;

 L60442: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49588;
  goto L57060;

 L49588: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49589;
    }
  goto L57060;

 L49589: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L60444;
    case V4DImode:
      goto L60445;
    default:
      break;
    }
  goto L57060;

 L60444: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49590;
    }
  goto L57060;

 L49590: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49591;
    }
  goto L57060;

 L49591: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49592;
  x1 = XEXP (x0, 0);
  goto L57060;

 L49592: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49593;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L49593: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L49594;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L49594: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4509;  /* *avx512f_scattersiv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L60445: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50142;
    }
  goto L57060;

 L50142: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50143;
    }
  goto L57060;

 L50143: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50144;
  x1 = XEXP (x0, 0);
  goto L57060;

 L50144: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50145;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L50145: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L50146;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L50146: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4533;  /* *avx512f_scatterdiv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L60443: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49611;
  goto L57060;

 L49611: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49612;
    }
  goto L57060;

 L49612: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L60446;
    case V4DImode:
      goto L60447;
    default:
      break;
    }
  goto L57060;

 L60446: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49613;
    }
  goto L57060;

 L49613: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49614;
    }
  goto L57060;

 L49614: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49615;
  x1 = XEXP (x0, 0);
  goto L57060;

 L49615: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49616;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L49616: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L49617;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L49617: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4510;  /* *avx512f_scattersiv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L60447: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50165;
    }
  goto L57060;

 L50165: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50166;
    }
  goto L57060;

 L50166: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50167;
  x1 = XEXP (x0, 0);
  goto L57060;

 L50167: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50168;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L50168: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L50169;
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L50169: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4534;  /* *avx512f_scatterdiv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57060;

 L22937: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L22938;
  if (nonimmediate_or_sse_const_operand (x1, V4DImode))
    {
      operands[1] = x1;
      goto L11513;
    }
  x1 = XEXP (x0, 0);
  goto L57075;

 L22938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60448;
  x1 = XEXP (x0, 0);
  goto L57075;

 L60448: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L22939;
    }
 L60449: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L23009;
    }
  x1 = XEXP (x0, 0);
  goto L57075;

 L22939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22940;
  x2 = XEXP (x1, 0);
  goto L60449;

 L22940: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22941;
  x2 = XEXP (x1, 0);
  goto L60449;

 L22941: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22942;
  x2 = XEXP (x1, 0);
  goto L60449;

 L22942: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22943;
  x2 = XEXP (x1, 0);
  goto L60449;

 L22943: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 6797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2270;  /* vec_extract_lo_v8di */
    }
  x2 = XEXP (x1, 0);
  goto L60449;

 L23009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23010;
  x1 = XEXP (x0, 0);
  goto L57075;

 L23010: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23011;
  x1 = XEXP (x0, 0);
  goto L57075;

 L23011: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23012;
  x1 = XEXP (x0, 0);
  goto L57075;

 L23012: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23013;
  x1 = XEXP (x0, 0);
  goto L57075;

 L23013: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 6835 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2276;  /* vec_extract_hi_v8di */
    }
  x1 = XEXP (x0, 0);
  goto L57075;

 L11513: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V4DImode)
       || register_operand (operands[1], V4DImode))) && 
#line 168 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1007;  /* *movv4di_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57075;

 L11584: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode)
    goto L60450;
  x1 = XEXP (x0, 0);
  goto L57093;

 L60450: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11585;
    case UNSPEC:
      goto L60456;
    case FIX:
      goto L21396;
    case UNSIGNED_FIX:
      goto L21409;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57093;

 L11585: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60461;
 L22047: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L22048;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60461: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L60466;
    case FIX:
      goto L21402;
    case UNSIGNED_FIX:
      goto L21415;
    case REG:
    case SUBREG:
    case MEM:
      goto L60459;
    default:
      goto L60460;
   }
 L60459: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L11586;
    }
 L60460: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L11712;
    }
  goto L22047;

 L60466: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L60469;
  goto L22047;

 L60469: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12248;
    case 41LL:
      goto L20304;
    case 150LL:
      goto L20369;
    default:
      break;
    }
  goto L22047;

 L12248: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L12249;
    }
  goto L22047;

 L12249: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L12250;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L12250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12251;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L12251: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 299 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1119;  /* *avx512vl_loaddquv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L20304: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L60472;
    case V4DFmode:
      goto L60473;
    default:
      break;
    }
  goto L22047;

 L60472: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20305;
    }
  goto L22047;

 L20305: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L20306;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L20306: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20307;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L20307: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4091 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 309 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1976;  /* avx512dq_cvtps2qqv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L60473: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21487;
    }
  goto L22047;

 L21487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L21488;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21489;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2124;  /* fix_notruncv4dfv4di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L20369: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L60474;
    case V4DFmode:
      goto L60475;
    default:
      break;
    }
  goto L22047;

 L60474: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20370;
    }
  goto L22047;

 L20370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L20371;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L20371: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20372;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L20372: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 309 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1984;  /* avx512dq_cvtps2uqqv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L60475: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21545;
    }
  goto L22047;

 L21545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L21546;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21546: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21547;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21547: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2132;  /* ufix_notruncv4dfv4di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L21402: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DFmode:
      goto L60476;
    case V4SFmode:
      goto L60477;
    default:
      break;
    }
  goto L22047;

 L60476: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21403;
    }
  goto L22047;

 L21403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L21404;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21405;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21405: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2112;  /* fix_truncv4dfv4di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L60477: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21635;
    }
  goto L22047;

 L21635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L21636;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21636: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21637;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2144;  /* fix_truncv4sfv4di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L21415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DFmode:
      goto L60478;
    case V4SFmode:
      goto L60479;
    default:
      break;
    }
  goto L22047;

 L60478: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21416;
    }
  goto L22047;

 L21416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L21417;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21417: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21418;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21418: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2114;  /* ufix_truncv4dfv4di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L60479: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21648;
    }
  goto L22047;

 L21648: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L21649;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21649: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21650;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L21650: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2146;  /* ufix_truncv4sfv4di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L11586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L11587;
    }
  x2 = XEXP (x1, 0);
  goto L60460;

 L11587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11588;
    }
  x2 = XEXP (x1, 0);
  goto L60460;

 L11588: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1022;  /* avx512vl_loadv4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60460;

 L11712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L11713;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L11713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11714;
    }
  x2 = XEXP (x1, 0);
  goto L22047;

 L11714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1040;  /* avx512vl_blendmv4di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22047;

 L22048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L22049;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L22049: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L22050;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L22050: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2199;  /* *avx512vl_cvtmask2qv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60456: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L60480;
  x1 = XEXP (x0, 0);
  goto L57093;

 L60480: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12242;
    case 41LL:
      goto L20298;
    case 150LL:
      goto L20363;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L12242: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L12243;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L12243: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 299 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1118;  /* *avx512vl_loaddquv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L20298: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L60483;
    case V4DFmode:
      goto L60484;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60483: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L20299;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L20299: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4091 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 309 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1975;  /* *avx512dq_cvtps2qqv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60484: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21481;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21481: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2123;  /* fix_notruncv4dfv4di2 */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L20363: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L60485;
    case V4DFmode:
      goto L60486;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60485: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L20364;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L20364: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 309 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1983;  /* *avx512dq_cvtps2uqqv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60486: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21539;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21539: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2131;  /* ufix_notruncv4dfv4di2 */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21396: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4DFmode:
      goto L60487;
    case V4SFmode:
      goto L60488;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60487: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21397;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21397: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2111;  /* fix_truncv4dfv4di2 */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60488: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L21629;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21629: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2143;  /* fix_truncv4sfv4di2 */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21409: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4DFmode:
      goto L60489;
    case V4SFmode:
      goto L60490;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60489: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21410;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21410: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2113;  /* ufix_truncv4dfv4di2 */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L60490: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L21642;
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L21642: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2145;  /* ufix_truncv4sfv4di2 */
    }
  x1 = XEXP (x0, 0);
  goto L57093;

 L11836: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode)
    goto L60491;
  x1 = XEXP (x0, 0);
  goto L57121;

 L60491: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11837;
    case UNSPEC:
      goto L60496;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57121;

 L11837: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DImode)
    goto L60501;
  x1 = XEXP (x0, 0);
  goto L57121;

 L60501: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L60503;
    case VEC_SELECT:
      goto L22904;
    case REG:
    case SUBREG:
      goto L60500;
    default:
      x1 = XEXP (x0, 0);
      goto L57121;
   }
 L60500: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L11838;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L60503: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12361;
  x1 = XEXP (x0, 0);
  goto L57121;

 L12361: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L12362;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L12362: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12363;
  x1 = XEXP (x0, 0);
  goto L57121;

 L12363: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12364;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L12364: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1138;  /* avx512vl_storedquv4di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L22905;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22906;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22906: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60504;
  x1 = XEXP (x0, 0);
  goto L57121;

 L60504: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 0LL:
        goto L22907;
      case 4LL:
        goto L22977;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22907: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22908;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22908: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22909;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22909: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22910;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L22911;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22912;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2267;  /* vec_extract_lo_v8di_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22977: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22978;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22978: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22979;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22979: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22980;
  x1 = XEXP (x0, 0);
  goto L57121;

 L22980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L22981;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22981: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22982;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22982: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6819 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2273;  /* vec_extract_hi_v8di_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L11838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11839;
  x1 = XEXP (x0, 0);
  goto L57121;

 L11839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11840;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L11840: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1058;  /* avx512vl_storev4di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L60496: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L60506;
    case 3:
      goto L60508;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L60506: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12318;
    case 103LL:
      goto L12474;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L12318: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L12319;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L12319: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1434 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 299 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1132;  /* avx512vl_storedquv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L12474: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L12475;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L12475: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1520 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 303 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1156;  /* avx_movntv4di */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L60508: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44088;
    case 165LL:
      goto L50529;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L44088: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44089;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L44089: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44090;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L44090: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 417 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4242;  /* avx2_maskstoreq256 */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L50529: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L50530;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L50530: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50531;
  x1 = XEXP (x0, 0);
  goto L57121;

 L50531: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50532;
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L50532: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4563;  /* avx512vl_compressstorev4di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57121;

 L22946: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode)
    goto L60510;
  goto ret0;

 L60510: ATTRIBUTE_UNUSED_LABEL
  return recog_73 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_75 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11592;
    case VEC_CONCAT:
      goto L11935;
    case UNSPEC:
      goto L60739;
    case FIX:
      goto L21422;
    case UNSIGNED_FIX:
      goto L21435;
    default:
     break;
   }
  goto ret0;

 L11592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L60744;
 L22054: ATTRIBUTE_UNUSED_LABEL
  if (constm1_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L22055;
    }
  goto ret0;

 L60744: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L60749;
    case FIX:
      goto L21428;
    case UNSIGNED_FIX:
      goto L21441;
    case REG:
    case SUBREG:
    case MEM:
      goto L60742;
    default:
      goto L60743;
   }
 L60742: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L11593;
    }
 L60743: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L11719;
    }
  goto L22054;

 L60749: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L60752;
  goto L22054;

 L60752: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12261;
    case 41LL:
      goto L20320;
    case 150LL:
      goto L20385;
    default:
      break;
    }
  goto L22054;

 L12261: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L12262;
    }
  goto L22054;

 L12262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L12263;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L12263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12264;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L12264: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 299 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1121;  /* *avx512vl_loaddquv2di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L20320: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V2SFmode:
      goto L60755;
    case V2DFmode:
      goto L60756;
    default:
      break;
    }
  goto L22054;

 L60755: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20321;
  goto L22054;

 L20321: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L20322;
    }
  goto L22054;

 L20322: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L20323;
  goto L22054;

 L20323: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20324;
  goto L22054;

 L20324: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L20325;
  goto L22054;

 L20325: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L20326;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L20326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20327;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L20327: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4104 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL)))
    {
      return 1978;  /* avx512dq_cvtps2qqv2di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L60756: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21500;
    }
  goto L22054;

 L21500: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L21501;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21502;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21502: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2126;  /* fix_notruncv2dfv2di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L20385: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V2SFmode:
      goto L60757;
    case V2DFmode:
      goto L60758;
    default:
      break;
    }
  goto L22054;

 L60757: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20386;
  goto L22054;

 L20386: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L20387;
    }
  goto L22054;

 L20387: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L20388;
  goto L22054;

 L20388: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20389;
  goto L22054;

 L20389: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L20390;
  goto L22054;

 L20390: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L20391;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L20391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20392;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L20392: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4127 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL)))
    {
      return 1986;  /* avx512dq_cvtps2uqqv2di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L60758: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21558;
    }
  goto L22054;

 L21558: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L21559;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21559: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21560;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21560: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2134;  /* ufix_notruncv2dfv2di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L21428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2DFmode:
      goto L60759;
    case V2SFmode:
      goto L60760;
    default:
      break;
    }
  goto L22054;

 L60759: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21429;
    }
  goto L22054;

 L21429: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L21430;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21431;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21431: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2116;  /* fix_truncv2dfv2di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L60760: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L21664;
  goto L22054;

 L21664: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L21665;
    }
  goto L22054;

 L21665: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L21666;
  goto L22054;

 L21666: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21667;
  goto L22054;

 L21667: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21668;
  goto L22054;

 L21668: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L21669;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21670;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21670: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4787 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL)))
    {
      return 2148;  /* fix_truncv2sfv2di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L21441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2DFmode:
      goto L60761;
    case V2SFmode:
      goto L60762;
    default:
      break;
    }
  goto L22054;

 L60761: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21442;
    }
  goto L22054;

 L21442: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L21443;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21444;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2118;  /* ufix_truncv2dfv2di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L60762: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L21684;
  goto L22054;

 L21684: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L21685;
    }
  goto L22054;

 L21685: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L21686;
  goto L22054;

 L21686: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21687;
  goto L22054;

 L21687: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21688;
  goto L22054;

 L21688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L21689;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21689: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21690;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L21690: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4787 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL)))
    {
      return 2150;  /* ufix_truncv2sfv2di2_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L11593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L11594;
    }
  x2 = XEXP (x1, 0);
  goto L60743;

 L11594: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11595;
    }
  x2 = XEXP (x1, 0);
  goto L60743;

 L11595: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1023;  /* avx512vl_loadv2di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L60743;

 L11719: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L11720;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L11720: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11721;
    }
  x2 = XEXP (x1, 0);
  goto L22054;

 L11721: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1041;  /* avx512vl_blendmv2di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L22054;

 L22055: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L22056;
    }
  goto ret0;

 L22056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L22057;
    }
  goto ret0;

 L22057: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2200;  /* *avx512vl_cvtmask2qv2di */
    }
  goto ret0;

 L11935: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == VEC_SELECT)
    goto L11936;
  goto ret0;

 L11936: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L11937;
    }
  goto ret0;

 L11937: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L11938;
  goto ret0;

 L11938: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L11939;
  goto ret0;

 L11939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1051 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 1072;  /* sse2_movq128 */
    }
  goto ret0;

 L60739: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L60763;
  goto ret0;

 L60763: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12255;
    case 41LL:
      goto L20311;
    case 150LL:
      goto L20376;
    default:
      break;
    }
  goto ret0;

 L12255: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L12256;
    }
  goto ret0;

 L12256: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 299 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1120;  /* *avx512vl_loaddquv2di */
    }
  goto ret0;

 L20311: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L60766;
    case V2DFmode:
      goto L60767;
    default:
      break;
    }
  goto ret0;

 L60766: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20312;
  goto ret0;

 L20312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20313;
    }
  goto ret0;

 L20313: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L20314;
  goto ret0;

 L20314: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20315;
  goto ret0;

 L20315: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4104 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 1977;  /* *avx512dq_cvtps2qqv2di */
    }
  goto ret0;

 L60767: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L21494;
    }
  goto ret0;

 L21494: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2125;  /* fix_notruncv2dfv2di2 */
    }
  goto ret0;

 L20376: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L60768;
    case V2DFmode:
      goto L60769;
    default:
      break;
    }
  goto ret0;

 L60768: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L20377;
  goto ret0;

 L20377: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20378;
    }
  goto ret0;

 L20378: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L20379;
  goto ret0;

 L20379: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20380;
  goto ret0;

 L20380: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4127 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 1985;  /* *avx512dq_cvtps2uqqv2di */
    }
  goto ret0;

 L60769: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L21552;
    }
  goto ret0;

 L21552: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2133;  /* ufix_notruncv2dfv2di2 */
    }
  goto ret0;

 L21422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2DFmode:
      goto L60770;
    case V2SFmode:
      goto L60771;
    default:
      break;
    }
  goto ret0;

 L60770: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L21423;
    }
  goto ret0;

 L21423: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2115;  /* fix_truncv2dfv2di2 */
    }
  goto ret0;

 L60771: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21655;
  goto ret0;

 L21655: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21656;
    }
  goto ret0;

 L21656: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L21657;
  goto ret0;

 L21657: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21658;
  goto ret0;

 L21658: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4787 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 2147;  /* fix_truncv2sfv2di2 */
    }
  goto ret0;

 L21435: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2DFmode:
      goto L60772;
    case V2SFmode:
      goto L60773;
    default:
      break;
    }
  goto ret0;

 L60772: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L21436;
    }
  goto ret0;

 L21436: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2117;  /* ufix_truncv2dfv2di2 */
    }
  goto ret0;

 L60773: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21675;
  goto ret0;

 L21675: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21676;
    }
  goto ret0;

 L21676: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L21677;
  goto ret0;

 L21677: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21678;
  goto ret0;

 L21678: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4787 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 2149;  /* ufix_truncv2sfv2di2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_76 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L22834;
    case UNSPEC:
      goto L60903;
    case PLUS:
      goto L28554;
    case MINUS:
      goto L28569;
    case MULT:
      goto L29458;
    case ASHIFTRT:
      goto L29926;
    case ASHIFT:
      goto L30181;
    case LSHIFTRT:
      goto L30196;
    case ROTATE:
      goto L30457;
    case ROTATERT:
      goto L30472;
    case SMAX:
      goto L31039;
    case SMIN:
      goto L31054;
    case UMAX:
      goto L31069;
    case UMIN:
      goto L31084;
    case AND:
      goto L32223;
    case IOR:
      goto L32869;
    case XOR:
      goto L32884;
    case VEC_DUPLICATE:
      goto L34532;
    case ABS:
      goto L37914;
    case SIGN_EXTEND:
      goto L38727;
    case ZERO_EXTEND:
      goto L38747;
    case CLZ:
      goto L51327;
    default:
     break;
   }
  goto ret0;

 L22834: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L60911;
    case V4DImode:
      goto L60914;
    default:
      break;
    }
  goto ret0;

 L60911: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L22835;
    }
  goto ret0;

 L22835: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22836;
  goto ret0;

 L22836: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22837;
    }
  goto ret0;

 L22837: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22838;
    }
  goto ret0;

 L22838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L22839;
    }
  goto ret0;

 L22839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L22840;
    }
  goto ret0;

 L22840: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6683 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (INTVAL (operands[2]) == INTVAL (operands[3]) - 1))))
    {
      return 2261;  /* avx512dq_vextracti64x2_1_mask */
    }
  goto ret0;

 L60914: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L25557;
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L23193;
    }
 L60913: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L23229;
    }
  goto ret0;

 L25557: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L25558;
    }
  goto ret0;

 L25558: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L25559;
    }
  goto ret0;

 L25559: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L25560;
  goto ret0;

 L25560: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L60915;
  goto ret0;

 L60915: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L25561;
      case 0LL:
        goto L25643;
      default:
        break;
      }
  goto ret0;

 L25561: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L25562;
  goto ret0;

 L25562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L25563;
    }
  goto ret0;

 L25563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25564;
    }
  goto ret0;

 L25564: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 8143 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2502;  /* vec_interleave_highv2di_mask */
    }
  goto ret0;

 L25643: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L25644;
  goto ret0;

 L25644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L25645;
    }
  goto ret0;

 L25645: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25646;
    }
  goto ret0;

 L25646: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 8193 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2508;  /* vec_interleave_lowv2di_mask */
    }
  goto ret0;

 L23193: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L23194;
  x3 = XEXP (x2, 0);
  goto L60913;

 L23194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23195;
  x3 = XEXP (x2, 0);
  goto L60913;

 L23195: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23196;
  x3 = XEXP (x2, 0);
  goto L60913;

 L23196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L23197;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60913;

 L23197: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23198;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60913;

 L23198: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6979 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && TARGET_AVX512VL && TARGET_AVX512DQ
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))))
    {
      return 2289;  /* vec_extract_lo_v4di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60913;

 L23229: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L23230;
  goto ret0;

 L23230: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23231;
  goto ret0;

 L23231: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23232;
  goto ret0;

 L23232: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L23233;
    }
  goto ret0;

 L23233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23234;
    }
  goto ret0;

 L23234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL && TARGET_AVX512DQ)))
    {
      return 2293;  /* vec_extract_hi_v4di_mask */
    }
  goto ret0;

 L60903: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L60917;
    case 3:
      goto L60918;
    case 1:
      goto L60922;
    default:
      break;
    }
  goto ret0;

 L60917: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 159)
    goto L24104;
  goto ret0;

 L24104: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L24105;
    }
  goto ret0;

 L24105: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L24106;
    }
  goto ret0;

 L24106: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L24107;
    }
  goto ret0;

 L24107: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24108;
    }
  goto ret0;

 L24108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DImode))
    {
      operands[5] = x2;
      goto L24109;
    }
 L24174: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24175;
  goto ret0;

 L24109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24110;
    }
  x2 = XEXP (x1, 1);
  goto L24174;

 L24110: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2367;  /* avx512vl_vternlogv2di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24174;

 L24175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24176;
    }
  goto ret0;

 L24176: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7713 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2373;  /* avx512vl_vternlogv2di_mask */
    }
  goto ret0;

 L60918: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 162LL:
      goto L24505;
    case 147LL:
      goto L42840;
    case 149LL:
      goto L43069;
    case 148LL:
      goto L43326;
    case 191LL:
      goto L51562;
    case 192LL:
      goto L51579;
    default:
      break;
    }
  goto ret0;

 L24505: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L24506;
    }
  goto ret0;

 L24506: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L24507;
    }
  goto ret0;

 L24507: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L24508;
    }
  goto ret0;

 L24508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L24509;
    }
  goto ret0;

 L24509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24510;
    }
  goto ret0;

 L24510: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2413;  /* avx512vl_alignv2di_mask */
    }
  goto ret0;

 L42840: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L42841;
    }
  goto ret0;

 L42841: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L42842;
    }
  goto ret0;

 L42842: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L42843;
    }
  goto ret0;

 L42843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L42844;
    }
  goto ret0;

 L42844: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42845;
    }
  goto ret0;

 L42845: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4108;  /* avx512vl_vpermi2varv2di3_maskz_1 */
    }
  goto ret0;

 L43069: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L43070;
    }
  goto ret0;

 L43070: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L43071;
    }
  goto ret0;

 L43071: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L43072;
    }
  goto ret0;

 L43072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43073;
  goto ret0;

 L43073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43074;
    }
  goto ret0;

 L43074: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4133;  /* avx512vl_vpermi2varv2di3_mask */
    }
  goto ret0;

 L43326: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L43327;
    }
  goto ret0;

 L43327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L43328;
    }
  goto ret0;

 L43328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L43329;
    }
  goto ret0;

 L43329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L43330;
    }
 L43558: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43559;
  goto ret0;

 L43330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43331;
    }
  x2 = XEXP (x1, 1);
  goto L43558;

 L43331: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4162;  /* avx512vl_vpermt2varv2di3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43558;

 L43559: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43560;
    }
  goto ret0;

 L43560: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4187;  /* avx512vl_vpermt2varv2di3_mask */
    }
  goto ret0;

 L51562: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L51563;
    }
  goto ret0;

 L51563: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L51564;
    }
  goto ret0;

 L51564: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L51565;
    }
  goto ret0;

 L51565: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L51566;
    }
 L51632: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L51633;
  goto ret0;

 L51566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51567;
    }
  x2 = XEXP (x1, 1);
  goto L51632;

 L51567: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4695;  /* vpamdd52luqv2di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L51632;

 L51633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51634;
    }
  goto ret0;

 L51634: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18706 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4702;  /* vpamdd52luqv2di_mask */
    }
  goto ret0;

 L51579: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L51580;
    }
  goto ret0;

 L51580: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L51581;
    }
  goto ret0;

 L51581: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L51582;
    }
  goto ret0;

 L51582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L51583;
    }
 L51642: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L51643;
  goto ret0;

 L51583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L51584;
    }
  x2 = XEXP (x1, 1);
  goto L51642;

 L51584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4697;  /* vpamdd52huqv2di_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L51642;

 L51643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51644;
    }
  goto ret0;

 L51644: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18706 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4703;  /* vpamdd52huqv2di_mask */
    }
  goto ret0;

 L60922: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 163)
    goto L51405;
  goto ret0;

 L51405: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L51406;
    }
  goto ret0;

 L51406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L51407;
    }
  goto ret0;

 L51407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51408;
    }
  goto ret0;

 L51408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4672;  /* conflictv2di_mask */
    }
  goto ret0;

 L28554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L28555;
    }
  goto ret0;

 L28555: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L28556;
    }
  goto ret0;

 L28556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L28557;
    }
  goto ret0;

 L28557: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28558;
    }
  goto ret0;

 L28558: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V2DImode, operands))))
    {
      return 2734;  /* *addv2di3 */
    }
 L28672: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (PLUS, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2747;  /* *addv2di3_mask */
    }
  goto ret0;

 L28569: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L28570;
    }
  goto ret0;

 L28570: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L28571;
    }
  goto ret0;

 L28571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L28572;
    }
  goto ret0;

 L28572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L28573;
    }
  goto ret0;

 L28573: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V2DImode, operands))))
    {
      return 2736;  /* *subv2di3 */
    }
 L28681: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9229 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ix86_binary_operator_ok (MINUS, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2748;  /* *subv2di3_mask */
    }
  goto ret0;

 L29458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L60925;
  goto ret0;

 L60925: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L29459;
    case SIGN_EXTEND:
      goto L29593;
    case REG:
    case SUBREG:
      goto L60927;
    default:
      goto ret0;
   }
 L60927: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L29783;
    }
  goto ret0;

 L29459: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29460;
  goto ret0;

 L29460: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[1] = x5;
      goto L29461;
    }
  goto ret0;

 L29461: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L29462;
  goto ret0;

 L29462: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29463;
  goto ret0;

 L29463: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29464;
  goto ret0;

 L29464: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L29465;
  goto ret0;

 L29465: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29466;
  goto ret0;

 L29466: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L29467;
    }
  goto ret0;

 L29467: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L29468;
  goto ret0;

 L29468: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29469;
  goto ret0;

 L29469: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29470;
  goto ret0;

 L29470: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L29471;
    }
  goto ret0;

 L29471: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29472;
    }
  goto ret0;

 L29472: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL
   && ix86_binary_operator_ok (MULT, V4SImode, operands))))
    {
      return 2832;  /* *vec_widen_umult_even_v4si_mask */
    }
  goto ret0;

 L29593: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29594;
  goto ret0;

 L29594: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[1] = x5;
      goto L29595;
    }
  goto ret0;

 L29595: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L29596;
  goto ret0;

 L29596: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29597;
  goto ret0;

 L29597: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29598;
  goto ret0;

 L29598: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L29599;
  goto ret0;

 L29599: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L29600;
  goto ret0;

 L29600: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L29601;
    }
  goto ret0;

 L29601: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L29602;
  goto ret0;

 L29602: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29603;
  goto ret0;

 L29603: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29604;
  goto ret0;

 L29604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L29605;
    }
  goto ret0;

 L29605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29606;
    }
  goto ret0;

 L29606: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9567 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL
   && ix86_binary_operator_ok (MULT, V4SImode, operands))))
    {
      return 2838;  /* *sse4_1_mulv2siv2di3_mask */
    }
  goto ret0;

 L29783: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L29784;
    }
  goto ret0;

 L29784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L29785;
    }
  goto ret0;

 L29785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29786;
    }
  goto ret0;

 L29786: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9728 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2852;  /* avx512dq_mulv2di3_mask */
    }
  goto ret0;

 L29926: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L60928;
  goto ret0;

 L60928: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L29927;
    }
 L60929: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L44162;
    }
  goto ret0;

 L29927: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L29928;
    }
  x3 = XEXP (x2, 0);
  goto L60929;

 L29928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L29929;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60929;

 L29929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L29930;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60929;

 L29930: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9934 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2872;  /* ashrv2di3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60929;

 L44162: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L44163;
    }
  goto ret0;

 L44163: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L44164;
    }
  goto ret0;

 L44164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44165;
    }
  goto ret0;

 L44165: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL)) && 
#line 337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4253;  /* avx2_ashrvv2di_mask */
    }
  goto ret0;

 L30181: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L44402;
    }
  goto ret0;

 L44402: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L44403;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30183;
    }
  goto ret0;

 L44403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L44404;
    }
  goto ret0;

 L44404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44405;
    }
  goto ret0;

 L44405: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 4285;  /* avx2_ashlvv2di_mask */
    }
  goto ret0;

 L30183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L30184;
    }
  goto ret0;

 L30184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30185;
    }
  goto ret0;

 L30185: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2906;  /* ashlv2di3_mask */
    }
  goto ret0;

 L30196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L44417;
    }
  goto ret0;

 L44417: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L44418;
    }
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30198;
    }
  goto ret0;

 L44418: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L44419;
    }
  goto ret0;

 L44419: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L44420;
    }
  goto ret0;

 L44420: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 4287;  /* avx2_lshrvv2di_mask */
    }
  goto ret0;

 L30198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L30199;
    }
  goto ret0;

 L30199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30200;
    }
  goto ret0;

 L30200: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL))))
    {
      return 2908;  /* lshrv2di3_mask */
    }
  goto ret0;

 L30457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L60930;
  goto ret0;

 L60930: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L30458;
    }
 L60931: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L30638;
    }
  goto ret0;

 L30458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L30459;
    }
  x3 = XEXP (x2, 0);
  goto L60931;

 L30459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L30460;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60931;

 L30460: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30461;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60931;

 L30461: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2944;  /* avx512vl_rolvv2di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60931;

 L30638: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30639;
    }
  goto ret0;

 L30639: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L30640;
    }
  goto ret0;

 L30640: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30641;
    }
  goto ret0;

 L30641: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2968;  /* avx512vl_rolv2di_mask */
    }
  goto ret0;

 L30472: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L60932;
  goto ret0;

 L60932: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L30473;
    }
 L60933: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L30653;
    }
  goto ret0;

 L30473: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L30474;
    }
  x3 = XEXP (x2, 0);
  goto L60933;

 L30474: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L30475;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60933;

 L30475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30476;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60933;

 L30476: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2946;  /* avx512vl_rorvv2di_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60933;

 L30653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L30654;
    }
  goto ret0;

 L30654: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L30655;
    }
  goto ret0;

 L30655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L30656;
    }
  goto ret0;

 L30656: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2970;  /* avx512vl_rorv2di_mask */
    }
  goto ret0;

 L31039: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L31040;
    }
  goto ret0;

 L31040: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L31041;
    }
  goto ret0;

 L31041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L31042;
    }
  goto ret0;

 L31042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31043;
    }
  goto ret0;

 L31043: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3024;  /* *avx512bw_smaxv2di3_mask */
    }
  goto ret0;

 L31054: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L31055;
    }
  goto ret0;

 L31055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L31056;
    }
  goto ret0;

 L31056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L31057;
    }
  goto ret0;

 L31057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31058;
    }
  goto ret0;

 L31058: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3026;  /* *avx512bw_sminv2di3_mask */
    }
  goto ret0;

 L31069: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L31070;
    }
  goto ret0;

 L31070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L31071;
    }
  goto ret0;

 L31071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L31072;
    }
  goto ret0;

 L31072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31073;
    }
  goto ret0;

 L31073: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3028;  /* *avx512bw_umaxv2di3_mask */
    }
  goto ret0;

 L31084: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L31085;
    }
  goto ret0;

 L31085: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L31086;
    }
  goto ret0;

 L31086: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L31087;
    }
  goto ret0;

 L31087: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L31088;
    }
  goto ret0;

 L31088: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3030;  /* *avx512bw_uminv2di3_mask */
    }
  goto ret0;

 L32223: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L60934;
  goto ret0;

 L60934: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L32224;
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L32855;
    }
  goto ret0;

 L32224: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L32225;
    }
  goto ret0;

 L32225: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L32226;
    }
  goto ret0;

 L32226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L32227;
    }
  goto ret0;

 L32227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32228;
    }
  goto ret0;

 L32228: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 3186;  /* *andnotv2di3 */
    }
 L32288: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10881 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3192;  /* *andnotv2di3_mask */
    }
  goto ret0;

 L32855: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L32856;
    }
  goto ret0;

 L32856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L32857;
    }
  goto ret0;

 L32857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32858;
    }
  goto ret0;

 L32858: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (AND, V2DImode, operands))))
    {
      return 3266;  /* andv2di3_mask */
    }
  goto ret0;

 L32869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L32870;
    }
  goto ret0;

 L32870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L32871;
    }
  goto ret0;

 L32871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L32872;
    }
  goto ret0;

 L32872: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32873;
    }
  goto ret0;

 L32873: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (IOR, V2DImode, operands))))
    {
      return 3268;  /* iorv2di3_mask */
    }
  goto ret0;

 L32884: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L32885;
    }
  goto ret0;

 L32885: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L32886;
    }
  goto ret0;

 L32886: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L32887;
    }
  goto ret0;

 L32887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L32888;
    }
  goto ret0;

 L32888: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   && ix86_binary_operator_ok (XOR, V2DImode, operands))))
    {
      return 3270;  /* xorv2di3_mask */
    }
  goto ret0;

 L34532: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L60937;
  goto ret0;

 L60937: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41583;
  if (nonimmediate_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L34533;
    }
 L60938: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L42010;
    }
  goto ret0;

 L41583: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L41584;
    }
  goto ret0;

 L41584: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41585;
  goto ret0;

 L41585: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41586;
  goto ret0;

 L41586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L41587;
    }
  goto ret0;

 L41587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41588;
    }
  goto ret0;

 L41588: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3936;  /* avx512vl_vec_dupv2di_mask */
    }
  goto ret0;

 L34533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L34534;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60938;

 L34534: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34535;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60938;

 L34535: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ((unsigned) exact_log2 (INTVAL (operands[3]))
       < GET_MODE_NUNITS (V2DImode))) && 
#line 11601 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_64BIT)))
    {
      return 3376;  /* sse4_1_pinsrq */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L60938;

 L42010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L42011;
    }
  goto ret0;

 L42011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42012;
    }
  goto ret0;

 L42012: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3992;  /* avx512vl_vec_dup_gprv2di_mask */
    }
  goto ret0;

 L37914: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L37915;
    }
  goto ret0;

 L37915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L37916;
    }
  goto ret0;

 L37916: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L37917;
    }
  goto ret0;

 L37917: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3557;  /* absv2di2_mask */
    }
  goto ret0;

 L38727: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2QImode:
      goto L60939;
    case V2HImode:
      goto L60940;
    case V2SImode:
      goto L60941;
    default:
      break;
    }
  goto ret0;

 L60939: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38728;
  goto ret0;

 L38728: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38729;
    }
  goto ret0;

 L38729: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L38730;
  goto ret0;

 L38730: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38731;
  goto ret0;

 L38731: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38732;
  goto ret0;

 L38732: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38733;
    }
  goto ret0;

 L38733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38734;
    }
  goto ret0;

 L38734: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14367 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3650;  /* sse4_1_sign_extendv2qiv2di2_mask */
    }
  goto ret0;

 L60940: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38842;
  goto ret0;

 L38842: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L38843;
    }
  goto ret0;

 L38843: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L38844;
  goto ret0;

 L38844: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38845;
  goto ret0;

 L38845: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38846;
  goto ret0;

 L38846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38847;
    }
  goto ret0;

 L38847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38848;
    }
  goto ret0;

 L38848: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3662;  /* sse4_1_sign_extendv2hiv2di2_mask */
    }
  goto ret0;

 L60941: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38934;
  goto ret0;

 L38934: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L38935;
    }
  goto ret0;

 L38935: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L38936;
  goto ret0;

 L38936: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38937;
  goto ret0;

 L38937: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38938;
  goto ret0;

 L38938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38939;
    }
  goto ret0;

 L38939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38940;
    }
  goto ret0;

 L38940: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14440 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3674;  /* sse4_1_sign_extendv2siv2di2_mask */
    }
  goto ret0;

 L38747: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2QImode:
      goto L60942;
    case V2HImode:
      goto L60943;
    case V2SImode:
      goto L60944;
    default:
      break;
    }
  goto ret0;

 L60942: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38748;
  goto ret0;

 L38748: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16QImode))
    {
      operands[1] = x4;
      goto L38749;
    }
  goto ret0;

 L38749: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L38750;
  goto ret0;

 L38750: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38751;
  goto ret0;

 L38751: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38752;
  goto ret0;

 L38752: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38753;
    }
  goto ret0;

 L38753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38754;
    }
  goto ret0;

 L38754: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14367 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3652;  /* sse4_1_zero_extendv2qiv2di2_mask */
    }
  goto ret0;

 L60943: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38862;
  goto ret0;

 L38862: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L38863;
    }
  goto ret0;

 L38863: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L38864;
  goto ret0;

 L38864: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38865;
  goto ret0;

 L38865: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38866;
  goto ret0;

 L38866: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38867;
    }
  goto ret0;

 L38867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38868;
    }
  goto ret0;

 L38868: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3664;  /* sse4_1_zero_extendv2hiv2di2_mask */
    }
  goto ret0;

 L60944: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L38954;
  goto ret0;

 L38954: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L38955;
    }
  goto ret0;

 L38955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L38956;
  goto ret0;

 L38956: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38957;
  goto ret0;

 L38957: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L38958;
  goto ret0;

 L38958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38959;
    }
  goto ret0;

 L38959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L38960;
    }
  goto ret0;

 L38960: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 14440 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && TARGET_AVX512VL)))
    {
      return 3676;  /* sse4_1_zero_extendv2siv2di2_mask */
    }
  goto ret0;

 L51327: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L51328;
    }
  goto ret0;

 L51328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L51329;
    }
  goto ret0;

 L51329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L51330;
    }
  goto ret0;

 L51330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4660;  /* clzv2di2_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_77 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XINT (x1, 1))
    {
    case 162LL:
      goto L24497;
    case 110LL:
      goto L38008;
    case 125LL:
      goto L40942;
    case 134LL:
      goto L41016;
    case 147LL:
      goto L42832;
    case 148LL:
      goto L43318;
    case 145LL:
      goto L47413;
    case 164LL:
      goto L50473;
    case 166LL:
      goto L50641;
    case 191LL:
      goto L51554;
    case 192LL:
      goto L51571;
    default:
      break;
    }
  goto ret0;

 L24497: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L24498;
    }
  goto ret0;

 L24498: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L24499;
    }
  goto ret0;

 L24499: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24500;
    }
  goto ret0;

 L24500: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7748 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2412;  /* *avx512vl_alignv2di */
    }
  goto ret0;

 L38008: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L38009;
    }
  goto ret0;

 L38009: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L38010;
    }
  goto ret0;

 L38010: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L38011;
    }
  goto ret0;

 L38011: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13954 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3571;  /* sse4a_extrqi */
    }
  goto ret0;

 L40942: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L40943;
    }
  goto ret0;

 L40943: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40944;
    }
  goto ret0;

 L40944: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L40945;
    }
  goto ret0;

 L40945: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3853;  /* xop_pcom_tfv2di3 */
    }
  goto ret0;

 L41016: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L41017;
    }
  goto ret0;

 L41017: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L41018;
    }
  goto ret0;

 L41018: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L41019;
    }
  goto ret0;

 L41019: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16428 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_PCLMUL))
    {
      return 3864;  /* pclmulqdq */
    }
  goto ret0;

 L42832: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L42833;
    }
  goto ret0;

 L42833: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L42834;
    }
  goto ret0;

 L42834: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L42835;
    }
  goto ret0;

 L42835: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4107;  /* avx512vl_vpermi2varv2di3 */
    }
  goto ret0;

 L43318: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L43319;
    }
  goto ret0;

 L43319: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L43320;
    }
  goto ret0;

 L43320: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L43321;
    }
  goto ret0;

 L43321: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4161;  /* avx512vl_vpermt2varv2di3 */
    }
  goto ret0;

 L47413: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L47414;
    }
  if (GET_CODE (x2) == PC)
    goto L48014;
  goto ret0;

 L47414: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47415;
    }
  goto ret0;

 L47415: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[6] = x2;
      goto L47416;
    }
  goto ret0;

 L47416: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60984;
    case DImode:
      goto L60985;
    default:
      break;
    }
  goto ret0;

 L60984: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47417;
  goto ret0;

 L47417: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47418;
    }
  goto ret0;

 L47418: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60986;
    case V2DImode:
      goto L60987;
    default:
      break;
    }
  goto ret0;

 L60986: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47419;
    }
  goto ret0;

 L47419: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47420;
    }
  goto ret0;

 L47420: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4421;  /* *avx512f_gathersiv2di */
    }
  goto ret0;

 L60987: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48619;
    }
  goto ret0;

 L48619: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48620;
    }
  goto ret0;

 L48620: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4469;  /* *avx512f_gatherdiv2di */
    }
  goto ret0;

 L60985: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47442;
  goto ret0;

 L47442: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47443;
    }
  goto ret0;

 L47443: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60988;
    case V2DImode:
      goto L60989;
    default:
      break;
    }
  goto ret0;

 L60988: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47444;
    }
  goto ret0;

 L47444: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47445;
    }
  goto ret0;

 L47445: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4422;  /* *avx512f_gathersiv2di */
    }
  goto ret0;

 L60989: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48644;
    }
  goto ret0;

 L48644: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48645;
    }
  goto ret0;

 L48645: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4470;  /* *avx512f_gatherdiv2di */
    }
  goto ret0;

 L48014: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L48015;
    }
  goto ret0;

 L48015: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[5] = x2;
      goto L48016;
    }
  goto ret0;

 L48016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60990;
    case DImode:
      goto L60991;
    default:
      break;
    }
  goto ret0;

 L60990: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48017;
  goto ret0;

 L48017: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L48018;
    }
  goto ret0;

 L48018: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60992;
    case V2DImode:
      goto L60993;
    default:
      break;
    }
  goto ret0;

 L60992: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L48019;
    }
  goto ret0;

 L48019: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48020;
    }
  goto ret0;

 L48020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4445;  /* *avx512f_gathersiv2di_2 */
    }
  goto ret0;

 L60993: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49219;
    }
  goto ret0;

 L49219: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49220;
    }
  goto ret0;

 L49220: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4493;  /* *avx512f_gatherdiv2di_2 */
    }
  goto ret0;

 L60991: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48042;
  goto ret0;

 L48042: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L48043;
    }
  goto ret0;

 L48043: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60994;
    case V2DImode:
      goto L60995;
    default:
      break;
    }
  goto ret0;

 L60994: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L48044;
    }
  goto ret0;

 L48044: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48045;
    }
  goto ret0;

 L48045: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4446;  /* *avx512f_gathersiv2di_2 */
    }
  goto ret0;

 L60995: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49244;
    }
  goto ret0;

 L49244: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49245;
    }
  goto ret0;

 L49245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4494;  /* *avx512f_gatherdiv2di_2 */
    }
  goto ret0;

 L50473: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L50474;
    }
  goto ret0;

 L50474: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L50475;
    }
  goto ret0;

 L50475: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50476;
    }
  goto ret0;

 L50476: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4555;  /* avx512vl_compressv2di_mask */
    }
  goto ret0;

 L50641: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L50642;
    }
  goto ret0;

 L50642: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L50643;
    }
  goto ret0;

 L50643: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50644;
    }
  goto ret0;

 L50644: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4579;  /* avx512vl_expandv2di_mask */
    }
  goto ret0;

 L51554: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L51555;
    }
  goto ret0;

 L51555: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L51556;
    }
  goto ret0;

 L51556: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L51557;
    }
  goto ret0;

 L51557: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4694;  /* vpamdd52luqv2di */
    }
  goto ret0;

 L51571: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L51572;
    }
  goto ret0;

 L51572: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L51573;
    }
  goto ret0;

 L51573: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L51574;
    }
  goto ret0;

 L51574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512IFMA) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4696;  /* vpamdd52huqv2di */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_78 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 4:
      goto L60945;
    case 3:
      goto L60946;
    case 2:
      goto L60947;
    case 1:
      goto L60952;
    default:
      break;
    }
  goto ret0;

 L60945: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 159LL:
      goto L24095;
    case 112LL:
      goto L38021;
    case 145LL:
      goto L44739;
    default:
      break;
    }
  goto ret0;

 L24095: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L24096;
    }
  goto ret0;

 L24096: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L24097;
    }
  goto ret0;

 L24097: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L24098;
    }
  goto ret0;

 L24098: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24099;
    }
  goto ret0;

 L24099: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7696 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2366;  /* avx512vl_vternlogv2di */
    }
  goto ret0;

 L38021: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L38022;
    }
  goto ret0;

 L38022: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38023;
    }
  goto ret0;

 L38023: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L38024;
    }
  goto ret0;

 L38024: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, VOIDmode))
    {
      operands[4] = x2;
      goto L38025;
    }
  goto ret0;

 L38025: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13979 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3573;  /* sse4a_insertqi */
    }
  goto ret0;

 L44739: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44740;
    }
  if (GET_CODE (x2) == PC)
    goto L45204;
  goto ret0;

 L44740: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[7] = x2;
      goto L44741;
    }
  goto ret0;

 L44741: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60972;
    case DImode:
      goto L60973;
    default:
      break;
    }
  goto ret0;

 L60972: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44742;
  goto ret0;

 L44742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L44743;
    }
  goto ret0;

 L44743: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60974;
    case V2DImode:
      goto L60975;
    default:
      break;
    }
  goto ret0;

 L60974: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44744;
    }
  goto ret0;

 L44744: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44745;
    }
  goto ret0;

 L44745: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44746;
  goto ret0;

 L44746: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44747;
  goto ret0;

 L44747: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[5] = x2;
      goto L44748;
    }
  goto ret0;

 L44748: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4329;  /* *avx2_gathersiv2di */
    }
  goto ret0;

 L60975: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45672;
    }
  goto ret0;

 L45672: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45673;
    }
  goto ret0;

 L45673: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45674;
  goto ret0;

 L45674: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45675;
  goto ret0;

 L45675: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[5] = x2;
      goto L45676;
    }
  goto ret0;

 L45676: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4361;  /* *avx2_gatherdiv2di */
    }
  goto ret0;

 L60973: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44771;
  goto ret0;

 L44771: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L44772;
    }
  goto ret0;

 L44772: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60976;
    case V2DImode:
      goto L60977;
    default:
      break;
    }
  goto ret0;

 L60976: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44773;
    }
  goto ret0;

 L44773: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44774;
    }
  goto ret0;

 L44774: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44775;
  goto ret0;

 L44775: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44776;
  goto ret0;

 L44776: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[5] = x2;
      goto L44777;
    }
  goto ret0;

 L44777: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4330;  /* *avx2_gathersiv2di */
    }
  goto ret0;

 L60977: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45701;
    }
  goto ret0;

 L45701: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45702;
    }
  goto ret0;

 L45702: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45703;
  goto ret0;

 L45703: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45704;
  goto ret0;

 L45704: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[5] = x2;
      goto L45705;
    }
  goto ret0;

 L45705: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4362;  /* *avx2_gatherdiv2di */
    }
  goto ret0;

 L45204: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DImode))
    {
      operands[6] = x2;
      goto L45205;
    }
  goto ret0;

 L45205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L60978;
    case DImode:
      goto L60979;
    default:
      break;
    }
  goto ret0;

 L60978: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45206;
  goto ret0;

 L45206: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45207;
    }
  goto ret0;

 L45207: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60980;
    case V2DImode:
      goto L60981;
    default:
      break;
    }
  goto ret0;

 L60980: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45208;
    }
  goto ret0;

 L45208: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45209;
    }
  goto ret0;

 L45209: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45210;
  goto ret0;

 L45210: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45211;
  goto ret0;

 L45211: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L45212;
    }
  goto ret0;

 L45212: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4345;  /* *avx2_gathersiv2di_2 */
    }
  goto ret0;

 L60981: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46136;
    }
  goto ret0;

 L46136: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46137;
    }
  goto ret0;

 L46137: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46138;
  goto ret0;

 L46138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46139;
  goto ret0;

 L46139: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L46140;
    }
  goto ret0;

 L46140: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4377;  /* *avx2_gatherdiv2di_2 */
    }
  goto ret0;

 L60979: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45235;
  goto ret0;

 L45235: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45236;
    }
  goto ret0;

 L45236: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L60982;
    case V2DImode:
      goto L60983;
    default:
      break;
    }
  goto ret0;

 L60982: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45237;
    }
  goto ret0;

 L45237: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45238;
    }
  goto ret0;

 L45238: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45239;
  goto ret0;

 L45239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45240;
  goto ret0;

 L45240: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L45241;
    }
  goto ret0;

 L45241: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4346;  /* *avx2_gathersiv2di_2 */
    }
  goto ret0;

 L60983: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46165;
    }
  goto ret0;

 L46165: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46166;
    }
  goto ret0;

 L46166: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46167;
  goto ret0;

 L46167: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46168;
  goto ret0;

 L46168: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L46169;
    }
  goto ret0;

 L46169: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4378;  /* *avx2_gatherdiv2di_2 */
    }
  goto ret0;

 L60946: ATTRIBUTE_UNUSED_LABEL
  return recog_77 (x0, insn, pnum_clobbers);

 L60947: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 46LL:
      goto L35730;
    case 111LL:
      goto L38015;
    case 113LL:
      goto L38029;
    case 128LL:
      goto L40981;
    case 129LL:
      goto L40987;
    case 130LL:
      goto L40993;
    case 131LL:
      goto L40999;
    case 133LL:
      goto L41010;
    case 42LL:
      goto L44028;
    default:
      break;
    }
  goto ret0;

 L35730: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L35731;
    }
  goto ret0;

 L35731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L35732;
    }
  goto ret0;

 L35732: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13060 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 3466;  /* sse2_psadbw */
    }
  goto ret0;

 L38015: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L38016;
    }
  goto ret0;

 L38016: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L38017;
    }
  goto ret0;

 L38017: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13966 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3572;  /* sse4a_extrq */
    }
  goto ret0;

 L38029: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L38030;
    }
  goto ret0;

 L38030: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L38031;
    }
  goto ret0;

 L38031: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13992 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3574;  /* sse4a_insertq */
    }
  goto ret0;

 L40981: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L40982;
    }
  goto ret0;

 L40982: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40983;
    }
  goto ret0;

 L40983: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16339 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AES))
    {
      return 3858;  /* aesenc */
    }
  goto ret0;

 L40987: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L40988;
    }
  goto ret0;

 L40988: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40989;
    }
  goto ret0;

 L40989: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AES))
    {
      return 3859;  /* aesenclast */
    }
  goto ret0;

 L40993: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L40994;
    }
  goto ret0;

 L40994: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40995;
    }
  goto ret0;

 L40995: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16371 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AES))
    {
      return 3860;  /* aesdec */
    }
  goto ret0;

 L40999: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L41000;
    }
  goto ret0;

 L41000: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L41001;
    }
  goto ret0;

 L41001: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AES))
    {
      return 3861;  /* aesdeclast */
    }
  goto ret0;

 L41010: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L41011;
    }
  goto ret0;

 L41011: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L41012;
    }
  goto ret0;

 L41012: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AES))
    {
      return 3863;  /* aeskeygenassist */
    }
  goto ret0;

 L44028: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44029;
    }
  goto ret0;

 L44029: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44030;
    }
  goto ret0;

 L44030: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 416 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4232;  /* avx2_maskloadq */
    }
  goto ret0;

 L60952: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 117LL:
      goto L38129;
    case 124LL:
      goto L40914;
    case 132LL:
      goto L41005;
    case 163LL:
      goto L51399;
    default:
      break;
    }
  goto ret0;

 L38129: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L38130;
    }
  goto ret0;

 L38130: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14078 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3589;  /* sse4_1_movntdqa */
    }
  goto ret0;

 L40914: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (ix86_comparison_uns_operator (x2, V2DImode))
    {
      operands[1] = x2;
      goto L40915;
    }
  goto ret0;

 L40915: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L40916;
    }
  goto ret0;

 L40916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L40917;
    }
  goto ret0;

 L40917: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16289 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3849;  /* xop_maskcmp_uns2v2di3 */
    }
  goto ret0;

 L41005: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L41006;
    }
  goto ret0;

 L41006: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AES))
    {
      return 3862;  /* aesimc */
    }
  goto ret0;

 L51399: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L51400;
    }
  goto ret0;

 L51400: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18521 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4671;  /* *conflictv2di */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_79 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L40259;
    case ZERO_EXTEND:
      goto L40316;
    default:
     break;
   }
  goto ret0;

 L40259: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40260;
  goto ret0;

 L40260: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16QImode))
    {
      operands[1] = x6;
      goto L40261;
    }
  goto ret0;

 L40261: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40262;
  goto ret0;

 L40262: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40263;
  goto ret0;

 L40263: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40264;
  goto ret0;

 L40264: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40265;
  goto ret0;

 L40265: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40266;
  goto ret0;

 L40266: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40267;
  goto ret0;

 L40267: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40268;
  goto ret0;

 L40268: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40269;
  goto ret0;

 L40269: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40270;
  goto ret0;

 L40270: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == PLUS)
    goto L40271;
  goto ret0;

 L40271: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40272;
  goto ret0;

 L40272: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40273;
  goto ret0;

 L40273: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40274;
  goto ret0;

 L40274: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40275;
  goto ret0;

 L40275: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40276;
  goto ret0;

 L40276: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40277;
  goto ret0;

 L40277: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40278;
  goto ret0;

 L40278: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40279;
  goto ret0;

 L40279: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40280;
  goto ret0;

 L40280: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40281;
  goto ret0;

 L40281: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40282;
  goto ret0;

 L40282: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40283;
  goto ret0;

 L40283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == PLUS)
    goto L40284;
  goto ret0;

 L40284: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == PLUS)
    goto L40285;
  goto ret0;

 L40285: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40286;
  goto ret0;

 L40286: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40287;
  goto ret0;

 L40287: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40288;
  goto ret0;

 L40288: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40289;
  goto ret0;

 L40289: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40290;
  goto ret0;

 L40290: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40291;
  goto ret0;

 L40291: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40292;
  goto ret0;

 L40292: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40293;
  goto ret0;

 L40293: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40294;
  goto ret0;

 L40294: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40295;
  goto ret0;

 L40295: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40296;
  goto ret0;

 L40296: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40297;
  goto ret0;

 L40297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == PLUS)
    goto L40298;
  goto ret0;

 L40298: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40299;
  goto ret0;

 L40299: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40300;
  goto ret0;

 L40300: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40301;
  goto ret0;

 L40301: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40302;
  goto ret0;

 L40302: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40303;
  goto ret0;

 L40303: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40304;
  goto ret0;

 L40304: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L40305;
  goto ret0;

 L40305: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40306;
  goto ret0;

 L40306: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40307;
  goto ret0;

 L40307: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40308;
  goto ret0;

 L40308: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40309;
  goto ret0;

 L40309: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15651 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3795;  /* xop_phaddbq */
    }
  goto ret0;

 L40316: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40317;
  goto ret0;

 L40317: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V16QImode))
    {
      operands[1] = x6;
      goto L40318;
    }
  goto ret0;

 L40318: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40319;
  goto ret0;

 L40319: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40320;
  goto ret0;

 L40320: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L40321;
  goto ret0;

 L40321: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40322;
  goto ret0;

 L40322: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40323;
  goto ret0;

 L40323: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40324;
  goto ret0;

 L40324: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40325;
  goto ret0;

 L40325: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40326;
  goto ret0;

 L40326: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L40327;
  goto ret0;

 L40327: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == PLUS)
    goto L40328;
  goto ret0;

 L40328: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40329;
  goto ret0;

 L40329: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40330;
  goto ret0;

 L40330: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40331;
  goto ret0;

 L40331: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40332;
  goto ret0;

 L40332: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40333;
  goto ret0;

 L40333: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L40334;
  goto ret0;

 L40334: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40335;
  goto ret0;

 L40335: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40336;
  goto ret0;

 L40336: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40337;
  goto ret0;

 L40337: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40338;
  goto ret0;

 L40338: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40339;
  goto ret0;

 L40339: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L40340;
  goto ret0;

 L40340: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == PLUS)
    goto L40341;
  goto ret0;

 L40341: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == PLUS)
    goto L40342;
  goto ret0;

 L40342: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40343;
  goto ret0;

 L40343: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40344;
  goto ret0;

 L40344: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40345;
  goto ret0;

 L40345: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40346;
  goto ret0;

 L40346: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40347;
  goto ret0;

 L40347: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L40348;
  goto ret0;

 L40348: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40349;
  goto ret0;

 L40349: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40350;
  goto ret0;

 L40350: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40351;
  goto ret0;

 L40351: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40352;
  goto ret0;

 L40352: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40353;
  goto ret0;

 L40353: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L40354;
  goto ret0;

 L40354: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == PLUS)
    goto L40355;
  goto ret0;

 L40355: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40356;
  goto ret0;

 L40356: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40357;
  goto ret0;

 L40357: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40358;
  goto ret0;

 L40358: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40359;
  goto ret0;

 L40359: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40360;
  goto ret0;

 L40360: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L40361;
  goto ret0;

 L40361: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L40362;
  goto ret0;

 L40362: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2QImode
      && GET_CODE (x5) == VEC_SELECT)
    goto L40363;
  goto ret0;

 L40363: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L40364;
  goto ret0;

 L40364: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 2)
    goto L40365;
  goto ret0;

 L40365: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L40366;
  goto ret0;

 L40366: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 1);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 15651 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3796;  /* xop_phaddubq */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_80 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case MULT:
      goto L39821;
    case PLUS:
      goto L40257;
    case SIGN_EXTEND:
      goto L40467;
    case ZERO_EXTEND:
      goto L40482;
    case REG:
    case SUBREG:
    case MEM:
      goto L61001;
    default:
      goto ret0;
   }
 L61001: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L28548;
    }
  goto ret0;

 L39821: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39822;
  goto ret0;

 L39822: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39823;
  goto ret0;

 L39823: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[1] = x5;
      goto L39824;
    }
  goto ret0;

 L39824: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L39825;
  goto ret0;

 L39825: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (GET_CODE (x6) == CONST_INT)
    goto L61006;
  goto ret0;

 L61006: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x6, 0) == XWINT (x6, 0))
    switch ((int) XWINT (x6, 0))
      {
      case 0LL:
        goto L39826;
      case 1LL:
        goto L39862;
      default:
        break;
      }
  goto ret0;

 L39826: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39827;
  goto ret0;

 L39827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39828;
  goto ret0;

 L39828: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39829;
  goto ret0;

 L39829: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L39830;
    }
  goto ret0;

 L39830: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L39831;
  goto ret0;

 L39831: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L39832;
  goto ret0;

 L39832: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39833;
  goto ret0;

 L39833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L39834;
    }
  goto ret0;

 L39834: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15472 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3767;  /* xop_pmacsdql */
    }
  goto ret0;

 L39862: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39863;
  goto ret0;

 L39863: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39864;
  goto ret0;

 L39864: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39865;
  goto ret0;

 L39865: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L39866;
    }
  goto ret0;

 L39866: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L39867;
  goto ret0;

 L39867: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39868;
  goto ret0;

 L39868: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39869;
  goto ret0;

 L39869: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L39870;
    }
  goto ret0;

 L39870: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3769;  /* xop_pmacsdqh */
    }
  goto ret0;

 L40257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode)
    goto L61008;
  goto ret0;

 L61008: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L40258;
    case SIGN_EXTEND:
      goto L40410;
    case ZERO_EXTEND:
      goto L40439;
    default:
     break;
   }
  goto ret0;

 L40258: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DImode)
    goto L61011;
  goto ret0;

 L61011: ATTRIBUTE_UNUSED_LABEL
  return recog_79 (x0, insn, pnum_clobbers);

 L40410: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40411;
  goto ret0;

 L40411: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[1] = x5;
      goto L40412;
    }
  goto ret0;

 L40412: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40413;
  goto ret0;

 L40413: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40414;
  goto ret0;

 L40414: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40415;
  goto ret0;

 L40415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L40416;
  goto ret0;

 L40416: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40417;
  goto ret0;

 L40417: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40418;
  goto ret0;

 L40418: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40419;
  goto ret0;

 L40419: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40420;
  goto ret0;

 L40420: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40421;
  goto ret0;

 L40421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == PLUS)
    goto L40422;
  goto ret0;

 L40422: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L40423;
  goto ret0;

 L40423: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40424;
  goto ret0;

 L40424: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40425;
  goto ret0;

 L40425: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40426;
  goto ret0;

 L40426: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40427;
  goto ret0;

 L40427: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40428;
  goto ret0;

 L40428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L40429;
  goto ret0;

 L40429: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40430;
  goto ret0;

 L40430: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40431;
  goto ret0;

 L40431: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40432;
  goto ret0;

 L40432: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40433;
  goto ret0;

 L40433: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 15693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3799;  /* xop_phaddwq */
    }
  goto ret0;

 L40439: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40440;
  goto ret0;

 L40440: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8HImode))
    {
      operands[1] = x5;
      goto L40441;
    }
  goto ret0;

 L40441: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40442;
  goto ret0;

 L40442: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40443;
  goto ret0;

 L40443: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L40444;
  goto ret0;

 L40444: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L40445;
  goto ret0;

 L40445: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40446;
  goto ret0;

 L40446: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40447;
  goto ret0;

 L40447: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40448;
  goto ret0;

 L40448: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40449;
  goto ret0;

 L40449: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L40450;
  goto ret0;

 L40450: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == PLUS)
    goto L40451;
  goto ret0;

 L40451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L40452;
  goto ret0;

 L40452: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40453;
  goto ret0;

 L40453: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40454;
  goto ret0;

 L40454: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40455;
  goto ret0;

 L40455: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40456;
  goto ret0;

 L40456: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L40457;
  goto ret0;

 L40457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L40458;
  goto ret0;

 L40458: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2HImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L40459;
  goto ret0;

 L40459: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L40460;
  goto ret0;

 L40460: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L40461;
  goto ret0;

 L40461: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L40462;
  goto ret0;

 L40462: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 15693 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3800;  /* xop_phadduwq */
    }
  goto ret0;

 L40467: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40468;
  goto ret0;

 L40468: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L40469;
    }
  goto ret0;

 L40469: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L40470;
  goto ret0;

 L40470: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40471;
  goto ret0;

 L40471: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40472;
  goto ret0;

 L40472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L40473;
  goto ret0;

 L40473: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40474;
  goto ret0;

 L40474: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40475;
  goto ret0;

 L40475: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L40476;
  goto ret0;

 L40476: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40477;
  goto ret0;

 L40477: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 15708 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3801;  /* xop_phadddq */
    }
  goto ret0;

 L40482: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40483;
  goto ret0;

 L40483: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L40484;
    }
  goto ret0;

 L40484: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L40485;
  goto ret0;

 L40485: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40486;
  goto ret0;

 L40486: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40487;
  goto ret0;

 L40487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L40488;
  goto ret0;

 L40488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40489;
  goto ret0;

 L40489: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40490;
  goto ret0;

 L40490: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L40491;
  goto ret0;

 L40491: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40492;
  goto ret0;

 L40492: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 15708 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3802;  /* xop_phaddudq */
    }
  goto ret0;

 L28548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L28549;
    }
  goto ret0;

 L28549: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (PLUS, V2DImode, operands)))
    {
      return 2733;  /* *addv2di3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_81 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22833;
    case UNSPEC:
      goto L60847;
    case VEC_SELECT:
      goto L25546;
    case PLUS:
      goto L28547;
    case MINUS:
      goto L28562;
    case MULT:
      goto L29442;
    case ASHIFTRT:
      goto L29919;
    case ASHIFT:
      goto L30174;
    case LSHIFTRT:
      goto L30189;
    case ROTATE:
      goto L30450;
    case ROTATERT:
      goto L30465;
    case SMAX:
      goto L31032;
    case SMIN:
      goto L31047;
    case UMAX:
      goto L31062;
    case UMIN:
      goto L31077;
    case EQ:
      goto L31788;
    case GT:
      goto L31812;
    case AND:
      goto L32215;
    case IOR:
      goto L32862;
    case XOR:
      goto L32877;
    case VEC_CONCAT:
      goto L35544;
    case ABS:
      goto L37868;
    case SIGN_EXTEND:
      goto L38718;
    case ZERO_EXTEND:
      goto L38738;
    case SS_PLUS:
      goto L39838;
    case IF_THEN_ELSE:
      goto L40079;
    case VEC_DUPLICATE:
      goto L41105;
    case CLZ:
      goto L51321;
    default:
     break;
   }
 L60824: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_int_operator (x1, V2DImode))
    {
      operands[1] = x1;
      goto L40863;
    }
 L60825: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_uns_operator (x1, V2DImode))
    {
      operands[1] = x1;
      goto L40887;
    }
  goto ret0;

 L22833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L60874;
  goto ret0;

 L60874: ATTRIBUTE_UNUSED_LABEL
  return recog_76 (x0, insn, pnum_clobbers);

 L60847: ATTRIBUTE_UNUSED_LABEL
  return recog_78 (x0, insn, pnum_clobbers);

 L25546: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4DImode:
      goto L60996;
    case V2DImode:
      goto L60997;
    default:
      break;
    }
  goto ret0;

 L60996: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L25547;
  goto ret0;

 L25547: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L25548;
    }
  goto ret0;

 L25548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L25549;
    }
  goto ret0;

 L25549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L25550;
  goto ret0;

 L25550: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L60998;
  goto ret0;

 L60998: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L25551;
      case 0LL:
        goto L25633;
      default:
        break;
      }
 L61000: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_1_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L25655;
    }
  goto ret0;

 L25551: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 8143 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2501;  /* vec_interleave_highv2di */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61000;

 L25633: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 8193 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2507;  /* vec_interleave_lowv2di */
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61000;

 L25655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_2_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L25656;
    }
  goto ret0;

 L25656: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8211 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2509;  /* sse2_shufpd_v2di */
    }
  goto ret0;

 L60997: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L43704;
    }
  goto ret0;

 L43704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && palignr_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L43705;
    }
  goto ret0;

 L43705: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L43706;
    }
  goto ret0;

 L43706: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17444 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 4204;  /* *ssse3_palignrv2di_perm */
    }
  goto ret0;

 L28547: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61002;
  goto ret0;

 L61002: ATTRIBUTE_UNUSED_LABEL
  return recog_80 (x0, insn, pnum_clobbers);

 L28562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61014;
  goto ret0;

 L61014: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == SIGN_EXTEND)
    goto L40543;
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L28563;
    }
  goto ret0;

 L40543: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40544;
  goto ret0;

 L40544: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L40545;
    }
  goto ret0;

 L40545: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L40546;
  goto ret0;

 L40546: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40547;
  goto ret0;

 L40547: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L40548;
  goto ret0;

 L40548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L40549;
  goto ret0;

 L40549: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L40550;
  goto ret0;

 L40550: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L40551;
  goto ret0;

 L40551: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L40552;
  goto ret0;

 L40552: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L40553;
  goto ret0;

 L40553: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 15761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3805;  /* xop_phsubdq */
    }
  goto ret0;

 L28563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L28564;
    }
  goto ret0;

 L28564: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2
   && ix86_binary_operator_ok (MINUS, V2DImode, operands)))
    {
      return 2735;  /* *subv2di3 */
    }
  goto ret0;

 L29442: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61015;
  goto ret0;

 L61015: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L29443;
    case SIGN_EXTEND:
      goto L29577;
    case REG:
    case SUBREG:
      goto L61017;
    default:
      goto ret0;
   }
 L61017: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L29776;
    }
  goto ret0;

 L29443: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29444;
  goto ret0;

 L29444: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L29445;
    }
  goto ret0;

 L29445: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L29446;
  goto ret0;

 L29446: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29447;
  goto ret0;

 L29447: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29448;
  goto ret0;

 L29448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L29449;
  goto ret0;

 L29449: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29450;
  goto ret0;

 L29450: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L29451;
    }
  goto ret0;

 L29451: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L29452;
  goto ret0;

 L29452: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29453;
  goto ret0;

 L29453: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 9449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1
   && ix86_binary_operator_ok (MULT, V4SImode, operands)))
    {
      return 2831;  /* *vec_widen_umult_even_v4si */
    }
  goto ret0;

 L29577: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29578;
  goto ret0;

 L29578: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L29579;
    }
  goto ret0;

 L29579: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L29580;
  goto ret0;

 L29580: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29581;
  goto ret0;

 L29581: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L29582;
  goto ret0;

 L29582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L29583;
  goto ret0;

 L29583: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L29584;
  goto ret0;

 L29584: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L29585;
    }
  goto ret0;

 L29585: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L29586;
  goto ret0;

 L29586: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L29587;
  goto ret0;

 L29587: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 9567 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1
   && ix86_binary_operator_ok (MULT, V4SImode, operands)))
    {
      return 2837;  /* *sse4_1_mulv2siv2di3 */
    }
  goto ret0;

 L29776: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L29777;
    }
  goto ret0;

 L29777: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9728 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2851;  /* avx512dq_mulv2di3 */
    }
  goto ret0;

 L29919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61018;
  goto ret0;

 L61018: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L29920;
    }
 L61019: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44155;
    }
  goto ret0;

 L29920: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L29921;
    }
  x2 = XEXP (x1, 0);
  goto L61019;

 L29921: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9934 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2871;  /* *ashrv2di3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61019;

 L44155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44156;
    }
  goto ret0;

 L44156: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4252;  /* avx2_ashrvv2di */
    }
  goto ret0;

 L30174: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44395;
    }
  goto ret0;

 L44395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44396;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30176;
    }
  goto ret0;

 L44396: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4284;  /* avx2_ashlvv2di */
    }
  goto ret0;

 L30176: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2905;  /* ashlv2di3 */
    }
  goto ret0;

 L30189: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44410;
    }
  goto ret0;

 L44410: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44411;
    }
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30191;
    }
  goto ret0;

 L44411: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 4286;  /* avx2_lshrvv2di */
    }
  goto ret0;

 L30191: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9981 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2907;  /* lshrv2di3 */
    }
  goto ret0;

 L30450: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61020;
  goto ret0;

 L61020: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L30451;
    }
 L61021: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L30631;
    }
  goto ret0;

 L30451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L30452;
    }
  x2 = XEXP (x1, 0);
  goto L61021;

 L30452: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2943;  /* avx512vl_rolvv2di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61021;

 L30631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L61022;
  goto ret0;

 L61022: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30632;
    }
 L61023: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_63_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40617;
    }
  goto ret0;

 L30632: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2967;  /* avx512vl_rolv2di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L61023;

 L40617: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15888 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3813;  /* xop_rotlv2di3 */
    }
  goto ret0;

 L30465: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61024;
  goto ret0;

 L61024: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L30466;
    }
 L61025: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L30646;
    }
  goto ret0;

 L30466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L30467;
    }
  x2 = XEXP (x1, 0);
  goto L61025;

 L30467: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2945;  /* avx512vl_rorvv2di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61025;

 L30646: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L61026;
  goto ret0;

 L61026: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30647;
    }
 L61027: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_63_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L40641;
    }
  goto ret0;

 L30647: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10106 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2969;  /* avx512vl_rorv2di */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L61027;

 L40641: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15899 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3817;  /* xop_rotrv2di3 */
    }
  goto ret0;

 L31032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31033;
    }
  goto ret0;

 L31033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31034;
    }
  goto ret0;

 L31034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMAX, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3023;  /* *avx512bw_smaxv2di3 */
    }
  goto ret0;

 L31047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31048;
    }
  goto ret0;

 L31048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31049;
    }
  goto ret0;

 L31049: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (SMIN, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3025;  /* *avx512bw_sminv2di3 */
    }
  goto ret0;

 L31062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31063;
    }
  goto ret0;

 L31063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31064;
    }
  goto ret0;

 L31064: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMAX, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3027;  /* *avx512bw_umaxv2di3 */
    }
  goto ret0;

 L31077: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31078;
    }
  goto ret0;

 L31078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31079;
    }
  goto ret0;

 L31079: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10147 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (UMIN, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3029;  /* *avx512bw_uminv2di3 */
    }
  goto ret0;

 L31788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31789;
    }
  goto L60824;

 L31789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31790;
    }
  goto L60824;

 L31790: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10439 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && ix86_binary_operator_ok (EQ, V2DImode, operands)))
    {
      return 3127;  /* *sse4_1_eqv2di3 */
    }
  x1 = XEXP (x0, 1);
  goto L60824;

 L31812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31813;
    }
  goto L60824;

 L31813: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31814;
    }
  goto L60824;

 L31814: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3131;  /* sse4_2_gtv2di3 */
    }
  x1 = XEXP (x0, 1);
  goto L60824;

 L32215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61028;
  goto ret0;

 L61028: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L32216;
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L32848;
    }
  goto ret0;

 L32216: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L32217;
    }
  goto ret0;

 L32217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L32218;
    }
  goto ret0;

 L32218: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10780 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3185;  /* *andnotv2di3 */
    }
  goto ret0;

 L32848: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L32849;
    }
  goto ret0;

 L32849: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V2DImode, operands)))
    {
      return 3265;  /* *andv2di3 */
    }
  goto ret0;

 L32862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L32863;
    }
  goto ret0;

 L32863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L32864;
    }
  goto ret0;

 L32864: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V2DImode, operands)))
    {
      return 3267;  /* *iorv2di3 */
    }
  goto ret0;

 L32877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L32878;
    }
  goto ret0;

 L32878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L32879;
    }
  goto ret0;

 L32879: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10918 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V2DImode, operands)))
    {
      return 3269;  /* *xorv2di3 */
    }
  goto ret0;

 L35544: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L35545;
    }
  goto ret0;

 L35545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L35546;
    }
  goto ret0;

 L35546: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12947 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3451;  /* vec_concatv2di */
    }
  goto ret0;

 L37868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L37869;
    }
  goto ret0;

 L37869: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 13855 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3551;  /* *absv2di2 */
    }
  goto ret0;

 L38718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2QImode:
      goto L61030;
    case V2HImode:
      goto L61031;
    case V2SImode:
      goto L61032;
    default:
      break;
    }
  goto ret0;

 L61030: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38719;
  goto ret0;

 L38719: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38720;
    }
  goto ret0;

 L38720: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L38721;
  goto ret0;

 L38721: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38722;
  goto ret0;

 L38722: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14367 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3649;  /* sse4_1_sign_extendv2qiv2di2 */
    }
  goto ret0;

 L61031: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38833;
  goto ret0;

 L38833: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38834;
    }
  goto ret0;

 L38834: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L38835;
  goto ret0;

 L38835: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38836;
  goto ret0;

 L38836: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3661;  /* sse4_1_sign_extendv2hiv2di2 */
    }
  goto ret0;

 L61032: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38925;
  goto ret0;

 L38925: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L38926;
    }
  goto ret0;

 L38926: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L38927;
  goto ret0;

 L38927: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38928;
  goto ret0;

 L38928: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14440 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3673;  /* sse4_1_sign_extendv2siv2di2 */
    }
  goto ret0;

 L38738: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2QImode:
      goto L61033;
    case V2HImode:
      goto L61034;
    case V2SImode:
      goto L61035;
    default:
      break;
    }
  goto ret0;

 L61033: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38739;
  goto ret0;

 L38739: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L38740;
    }
  goto ret0;

 L38740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L38741;
  goto ret0;

 L38741: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38742;
  goto ret0;

 L38742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14367 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3651;  /* sse4_1_zero_extendv2qiv2di2 */
    }
  goto ret0;

 L61034: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38853;
  goto ret0;

 L38853: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L38854;
    }
  goto ret0;

 L38854: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L38855;
  goto ret0;

 L38855: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38856;
  goto ret0;

 L38856: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3663;  /* sse4_1_zero_extendv2hiv2di2 */
    }
  goto ret0;

 L61035: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38945;
  goto ret0;

 L38945: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L38946;
    }
  goto ret0;

 L38946: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L38947;
  goto ret0;

 L38947: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L38948;
  goto ret0;

 L38948: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14440 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1 && 1))
    {
      return 3675;  /* sse4_1_zero_extendv2siv2di2 */
    }
  goto ret0;

 L39838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == MULT)
    goto L39839;
  goto ret0;

 L39839: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39840;
  goto ret0;

 L39840: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39841;
  goto ret0;

 L39841: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[1] = x5;
      goto L39842;
    }
  goto ret0;

 L39842: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L39843;
  goto ret0;

 L39843: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (GET_CODE (x6) == CONST_INT)
    goto L61036;
  goto ret0;

 L61036: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x6, 0) == XWINT (x6, 0))
    switch ((int) XWINT (x6, 0))
      {
      case 0LL:
        goto L39844;
      case 1LL:
        goto L39880;
      default:
        break;
      }
  goto ret0;

 L39844: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39845;
  goto ret0;

 L39845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39846;
  goto ret0;

 L39846: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39847;
  goto ret0;

 L39847: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L39848;
    }
  goto ret0;

 L39848: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L39849;
  goto ret0;

 L39849: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L39850;
  goto ret0;

 L39850: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L39851;
  goto ret0;

 L39851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L39852;
    }
  goto ret0;

 L39852: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15472 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3768;  /* xop_pmacssdql */
    }
  goto ret0;

 L39880: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39881;
  goto ret0;

 L39881: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L39882;
  goto ret0;

 L39882: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SImode
      && GET_CODE (x4) == VEC_SELECT)
    goto L39883;
  goto ret0;

 L39883: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L39884;
    }
  goto ret0;

 L39884: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L39885;
  goto ret0;

 L39885: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39886;
  goto ret0;

 L39886: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L39887;
  goto ret0;

 L39887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L39888;
    }
  goto ret0;

 L39888: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3770;  /* xop_pmacssdqh */
    }
  goto ret0;

 L40079: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L61039;
  goto ret0;

 L61039: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == GE)
    goto L40685;
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L40080;
    }
  goto ret0;

 L40685: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L40686;
    }
  goto ret0;

 L40686: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L40687;
  goto ret0;

 L40687: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode)
    goto L61040;
  goto ret0;

 L61040: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ROTATE:
      goto L40688;
    case ASHIFT:
      goto L40740;
    default:
     break;
   }
  goto ret0;

 L40688: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L40689;
    }
  goto ret0;

 L40689: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40690;
  goto ret0;

 L40690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == ROTATERT)
    goto L40691;
  goto ret0;

 L40691: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40692;
  goto ret0;

 L40692: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == NEG)
    goto L40693;
  goto ret0;

 L40693: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 15943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3821;  /* xop_vrotlv2di3 */
    }
  goto ret0;

 L40740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L40741;
    }
  goto ret0;

 L40741: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L40742;
  goto ret0;

 L40742: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V2DImode)
    goto L61042;
  goto ret0;

 L61042: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFTRT:
      goto L40743;
    case LSHIFTRT:
      goto L40795;
    default:
     break;
   }
  goto ret0;

 L40743: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40744;
  goto ret0;

 L40744: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == NEG)
    goto L40745;
  goto ret0;

 L40745: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16118 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3825;  /* xop_shav2di3 */
    }
  goto ret0;

 L40795: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L40796;
  goto ret0;

 L40796: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DImode
      && GET_CODE (x3) == NEG)
    goto L40797;
  goto ret0;

 L40797: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 16137 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 3829;  /* xop_shlv2di3 */
    }
  goto ret0;

 L40080: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L40081;
    }
  goto ret0;

 L40081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40082;
    }
  goto ret0;

 L40082: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3784;  /* xop_pcmov_v2di */
    }
  goto ret0;

 L41105: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode)
    goto L61044;
  goto ret0;

 L61044: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L41106;
    case ZERO_EXTEND:
      goto L42426;
    case REG:
    case SUBREG:
    case MEM:
      goto L61045;
    default:
      goto ret0;
   }
 L61045: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L42004;
    }
  goto ret0;

 L41106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L41107;
    }
  goto ret0;

 L41107: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41108;
  goto ret0;

 L41108: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61047;
  goto ret0;

 L61047: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x4, 0) == 0LL)
    goto L61049;
  goto ret0;

 L61049: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16490 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3878;  /* avx2_pbroadcastv2di */
    }
 L61050: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3935;  /* avx512vl_vec_dupv2di */
    }
  goto ret0;

 L42426: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L42427;
    }
  goto ret0;

 L42427: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16935 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4056;  /* avx512cd_maskb_vec_dupv2di */
    }
  goto ret0;

 L42004: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3991;  /* *avx512vl_vec_dup_gprv2di */
    }
 L42105: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16752 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 4007;  /* *vec_dupv2di */
    }
  goto ret0;

 L51321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L51322;
    }
  goto ret0;

 L51322: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512CD) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4659;  /* clzv2di2 */
    }
  goto ret0;

 L40863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40864;
    }
  goto L60825;

 L40864: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L40865;
    }
  goto L60825;

 L40865: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16256 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3841;  /* xop_maskcmpv2di3 */
    }
  x1 = XEXP (x0, 1);
  goto L60825;

 L40887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L40888;
    }
  goto ret0;

 L40888: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L40889;
    }
  goto ret0;

 L40889: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3845;  /* xop_maskcmp_unsv2di3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_82 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L61195;
    case 2:
      goto L61198;
    case 3:
      goto L61199;
    case 4:
      goto L61202;
    default:
      break;
    }
  goto ret0;

 L61195: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L11962;
    case 155LL:
      goto L13495;
    case 156LL:
      goto L13749;
    case 160LL:
      goto L24194;
    case 172LL:
      goto L39538;
    case 173LL:
      goto L39602;
    case 174LL:
      goto L39702;
    case 141LL:
      goto L44650;
    default:
      break;
    }
  goto ret0;

 L11962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L11963;
    }
  goto ret0;

 L11963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L11964;
    }
  goto ret0;

 L11964: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11965;
    }
  goto ret0;

 L11965: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1075;  /* *avx512f_loadups512_mask */
    }
  goto ret0;

 L13495: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13496;
    }
  goto ret0;

 L13496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13497;
    }
  goto ret0;

 L13497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L13498;
    }
  goto ret0;

 L13498: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1272;  /* rcp14v16sf_mask */
    }
  goto ret0;

 L13749: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13750;
    }
  goto ret0;

 L13750: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13751;
    }
  goto ret0;

 L13751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L13752;
    }
  goto ret0;

 L13752: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1308;  /* rsqrt14v16sf_mask */
    }
  goto ret0;

 L24194: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L24195;
    }
  goto ret0;

 L24195: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L24196;
    }
  goto ret0;

 L24196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L24197;
    }
  goto ret0;

 L24197: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2376;  /* avx512f_getexpv16sf_mask */
    }
  goto ret0;

 L39538: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L39539;
    }
  goto ret0;

 L39539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L39540;
    }
  goto ret0;

 L39540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L39541;
    }
  goto ret0;

 L39541: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3733;  /* avx512er_exp2v16sf_mask */
    }
  goto ret0;

 L39602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L39603;
    }
  goto ret0;

 L39603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L39604;
    }
  goto ret0;

 L39604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L39605;
    }
  goto ret0;

 L39605: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3741;  /* avx512er_rcp28v16sf_mask */
    }
  goto ret0;

 L39702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L39703;
    }
  goto ret0;

 L39703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L39704;
    }
  goto ret0;

 L39704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L39705;
    }
  goto ret0;

 L39705: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3753;  /* avx512er_rsqrt28v16sf_mask */
    }
  goto ret0;

 L44650: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L44651;
    }
  goto ret0;

 L44651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L44652;
    }
  goto ret0;

 L44652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L44653;
    }
  goto ret0;

 L44653: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4320;  /* avx512f_vcvtph2ps512_mask */
    }
  goto ret0;

 L61198: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 188LL:
      goto L15129;
    case 158LL:
      goto L23800;
    case 82LL:
      goto L25116;
    case 143LL:
      goto L41192;
    case 136LL:
      goto L42579;
    case 161LL:
      goto L50961;
    default:
      break;
    }
  goto ret0;

 L15129: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L15130;
    }
  goto ret0;

 L15130: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L15131;
    }
  goto ret0;

 L15131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L15132;
    }
  goto ret0;

 L15132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15133;
    }
  goto ret0;

 L15133: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 1437;  /* reducepv16sf_mask */
    }
  goto ret0;

 L23800: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L23801;
    }
  goto ret0;

 L23801: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L23802;
    }
  goto ret0;

 L23802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L23803;
    }
  goto ret0;

 L23803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L23804;
    }
  goto ret0;

 L23804: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2334;  /* avx512f_scalefv16sf_mask */
    }
  goto ret0;

 L25116: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L25117;
    }
  goto ret0;

 L25117: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25118;
    }
  goto ret0;

 L25118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L25119;
    }
  goto ret0;

 L25119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L25120;
    }
  goto ret0;

 L25120: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2464;  /* avx512f_rndscalev16sf_mask */
    }
  goto ret0;

 L41192: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L41193;
    }
  goto ret0;

 L41193: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L41194;
    }
  goto ret0;

 L41194: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L41195;
    }
  goto ret0;

 L41195: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L41196;
    }
  goto ret0;

 L41196: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 537 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3890;  /* avx512f_permvarv16sf_mask */
    }
  goto ret0;

 L42579: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L42580;
    }
  goto ret0;

 L42580: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L42581;
    }
  goto ret0;

 L42581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L42582;
    }
  goto ret0;

 L42582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L42583;
    }
  goto ret0;

 L42583: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4076;  /* avx512f_vpermilvarv16sf3_mask */
    }
  goto ret0;

 L50961: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L50962;
    }
  goto ret0;

 L50962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L50963;
    }
  goto ret0;

 L50963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L50964;
    }
  goto ret0;

 L50964: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L50965;
    }
  goto ret0;

 L50965: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4617;  /* avx512f_getmantv16sf_mask */
    }
  goto ret0;

 L61199: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 123LL:
      goto L18648;
    case 147LL:
      goto L42687;
    case 149LL:
      goto L42979;
    case 148LL:
      goto L43173;
    case 190LL:
      goto L50673;
    default:
      break;
    }
  goto ret0;

 L18648: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L61215;
  goto ret0;

 L61215: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L18649;
    }
 L61216: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L18787;
    }
  goto ret0;

 L18649: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L18650;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L18650: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L61218;
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L61218: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19124;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L18651;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L19124: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L19125;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L19125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L19126;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L19126: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L19127;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L19127: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1855;  /* fma_fmsubadd_v16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L18651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L18652;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L18652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L18653;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L18653: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1809;  /* fma_fmaddsub_v16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61216;

 L18787: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L18788;
    }
  goto ret0;

 L18788: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L61221;
  goto ret0;

 L61221: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19277;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L18789;
    }
 L61220: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L18927;
    }
  goto ret0;

 L19277: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SFmode)
    goto L61222;
  goto ret0;

 L61222: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L19278;
    }
 L61223: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L19428;
    }
  goto ret0;

 L19278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19279;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61223;

 L19279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L19280;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61223;

 L19280: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1870;  /* avx512f_fmsubadd_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61223;

 L19428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19429;
  goto ret0;

 L19429: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L19430;
    }
  goto ret0;

 L19430: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1882;  /* avx512f_fmsubadd_v16sf_mask3 */
    }
  goto ret0;

 L18789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18790;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61220;

 L18790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L18791;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61220;

 L18791: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1824;  /* avx512f_fmaddsub_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61220;

 L18927: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18928;
  goto ret0;

 L18928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L18929;
    }
  goto ret0;

 L18929: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1836;  /* avx512f_fmaddsub_v16sf_mask3 */
    }
  goto ret0;

 L42687: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L42688;
    }
  goto ret0;

 L42688: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L42689;
    }
  goto ret0;

 L42689: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L42690;
    }
  goto ret0;

 L42690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L42691;
    }
  goto ret0;

 L42691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L42692;
    }
  goto ret0;

 L42692: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4090;  /* avx512f_vpermi2varv16sf3_maskz_1 */
    }
  goto ret0;

 L42979: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L42980;
    }
  goto ret0;

 L42980: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L42981;
    }
  goto ret0;

 L42981: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L42982;
    }
  goto ret0;

 L42982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L42983;
  goto ret0;

 L42983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L42984;
    }
  goto ret0;

 L42984: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4124;  /* avx512f_vpermi2varv16sf3_mask */
    }
  goto ret0;

 L43173: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L43174;
    }
  goto ret0;

 L43174: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L43175;
    }
  goto ret0;

 L43175: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L43176;
    }
  goto ret0;

 L43176: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L43177;
    }
 L43468: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43469;
  goto ret0;

 L43177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L43178;
    }
  x2 = XEXP (x1, 1);
  goto L43468;

 L43178: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4144;  /* avx512f_vpermt2varv16sf3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43468;

 L43469: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L43470;
    }
  goto ret0;

 L43470: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4178;  /* avx512f_vpermt2varv16sf3_mask */
    }
  goto ret0;

 L50673: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L50674;
    }
  goto ret0;

 L50674: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L50675;
    }
  goto ret0;

 L50675: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50676;
    }
  goto ret0;

 L50676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L50677;
    }
  goto ret0;

 L50677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L50678;
    }
  goto ret0;

 L50678: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 4583;  /* avx512dq_rangepv16sf_mask */
    }
  goto ret0;

 L61202: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24534;
  goto ret0;

 L24534: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L24535;
    }
  goto ret0;

 L24535: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L24536;
    }
  goto ret0;

 L24536: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L24537;
    }
  goto ret0;

 L24537: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24538;
    }
  goto ret0;

 L24538: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[5] = x2;
      goto L24539;
    }
 L24783: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24784;
  goto ret0;

 L24539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L24540;
    }
  x2 = XEXP (x1, 1);
  goto L24783;

 L24540: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2416;  /* avx512f_fixupimmv16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24783;

 L24784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L24785;
    }
  goto ret0;

 L24785: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2438;  /* avx512f_fixupimmv16sf_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_83 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L22129;
    }
 L61252: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L22409;
    }
 L61253: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L25387;
    }
  goto ret0;

 L22129: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L22130;
    }
  x4 = XEXP (x3, 0);
  goto L61252;

 L22130: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L22131;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22131: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61254;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L61254: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 2LL:
        goto L22132;
      case 0LL:
        goto L22242;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22132: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L22133;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22133: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22134;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22134: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L22135;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22135: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22136;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22136: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L22137;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22137: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22138;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22138: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L22139;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22139: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22140;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22140: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L22141;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22141: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22142;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22142: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L22143;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22143: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22144;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22144: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L22145;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22145: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L22146;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22146: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L22147;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22147: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L22148;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L22149;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22149: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2206;  /* avx512f_unpckhps512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22242: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L22243;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22243: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22244;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22244: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L22245;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22245: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22246;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22246: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L22247;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22247: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22248;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22248: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L22249;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22249: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22250;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22250: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L22251;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22251: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22252;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22252: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L22253;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22253: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22254;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22254: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L22255;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22255: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22256;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22256: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L22257;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L22258;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L22259;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22259: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2212;  /* avx512f_unpcklps512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61252;

 L22409: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[1]))
    goto L22410;
  x4 = XEXP (x3, 0);
  goto L61253;

 L22410: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L22411;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22411: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61256;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L61256: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L22412;
      case 0LL:
        goto L22522;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22412: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22413;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22413: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22414;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22414: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22415;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22415: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22416;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22416: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22417;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22417: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22418;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22418: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22419;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22419: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22420;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22420: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22421;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22421: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22422;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22422: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22423;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22423: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22424;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22424: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22425;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22425: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L22426;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22426: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L22427;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L22428;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L22429;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22429: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2222;  /* avx512f_movshdup512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22522: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22523;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22523: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22524;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22524: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22525;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22525: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22526;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22526: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22527;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22527: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22528;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22528: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22529;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22529: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22530;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22530: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22531;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22531: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22532;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22532: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22533;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22533: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22534;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22534: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22535;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22535: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22536;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22536: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22537;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L22538;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22538: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L22539;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L22539: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2228;  /* avx512f_movsldup512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61253;

 L25387: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L25388;
    }
  goto ret0;

 L25388: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 16)
    goto L25389;
  goto ret0;

 L25389: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61258;
  goto ret0;

 L61258: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L25390;
    }
 L61259: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35079;
    }
  goto ret0;

 L25390: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L25391;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25391: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_16_to_19_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L25392;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_16_to_19_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L25393;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L25394;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L25395;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25395: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_20_to_23_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L25396;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25396: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_20_to_23_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L25397;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25397: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[11] = x4;
      goto L25398;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25398: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[12] = x4;
      goto L25399;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25399: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (const_24_to_27_operand (x4, VOIDmode))
    {
      operands[13] = x4;
      goto L25400;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25400: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (const_24_to_27_operand (x4, VOIDmode))
    {
      operands[14] = x4;
      goto L25401;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25401: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[15] = x4;
      goto L25402;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25402: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[16] = x4;
      goto L25403;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25403: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (const_28_to_31_operand (x4, VOIDmode))
    {
      operands[17] = x4;
      goto L25404;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25404: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (const_28_to_31_operand (x4, VOIDmode))
    {
      operands[18] = x4;
      goto L25405;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[19] = x2;
      goto L25406;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[20] = x2;
      goto L25407;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L25407: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7932 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
       && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
       && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
       && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)
       && INTVAL (operands[3]) == (INTVAL (operands[11]) - 8)
       && INTVAL (operands[4]) == (INTVAL (operands[12]) - 8)
       && INTVAL (operands[5]) == (INTVAL (operands[13]) - 8)
       && INTVAL (operands[6]) == (INTVAL (operands[14]) - 8)
       && INTVAL (operands[3]) == (INTVAL (operands[15]) - 12)
       && INTVAL (operands[4]) == (INTVAL (operands[16]) - 12)
       && INTVAL (operands[5]) == (INTVAL (operands[17]) - 12)
       && INTVAL (operands[6]) == (INTVAL (operands[18]) - 12)))))
    {
      return 2491;  /* avx512f_shufps512_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L61259;

 L35079: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35080;
    }
  goto ret0;

 L35080: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35081;
    }
  goto ret0;

 L35081: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35082;
    }
  goto ret0;

 L35082: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35083;
    }
  goto ret0;

 L35083: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35084;
    }
  goto ret0;

 L35084: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35085;
    }
  goto ret0;

 L35085: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L35086;
    }
  goto ret0;

 L35086: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 8);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[11] = x4;
      goto L35087;
    }
  goto ret0;

 L35087: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 9);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[12] = x4;
      goto L35088;
    }
  goto ret0;

 L35088: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 10);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[13] = x4;
      goto L35089;
    }
  goto ret0;

 L35089: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 11);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[14] = x4;
      goto L35090;
    }
  goto ret0;

 L35090: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 12);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[15] = x4;
      goto L35091;
    }
  goto ret0;

 L35091: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 13);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[16] = x4;
      goto L35092;
    }
  goto ret0;

 L35092: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 14);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[17] = x4;
      goto L35093;
    }
  goto ret0;

 L35093: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 15);
  if (const_16_to_31_operand (x4, VOIDmode))
    {
      operands[18] = x4;
      goto L35094;
    }
  goto ret0;

 L35094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[19] = x2;
      goto L35095;
    }
  goto ret0;

 L35095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[20] = x2;
      goto L35096;
    }
  goto ret0;

 L35096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 12015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3)
       && INTVAL (operands[11]) == (INTVAL (operands[12]) - 1)
       && INTVAL (operands[11]) == (INTVAL (operands[13]) - 2)
       && INTVAL (operands[11]) == (INTVAL (operands[14]) - 3)
       && INTVAL (operands[15]) == (INTVAL (operands[16]) - 1)
       && INTVAL (operands[15]) == (INTVAL (operands[17]) - 2)
       && INTVAL (operands[15]) == (INTVAL (operands[18]) - 3)))))
    {
      return 3414;  /* avx512f_shuf_f32x4_1_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_84 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L61175;
    case PLUS:
      goto L12548;
    case MINUS:
      goto L12584;
    case MULT:
      goto L13060;
    case DIV:
      goto L13356;
    case SQRT:
      goto L13595;
    case SMAX:
      goto L13858;
    case SMIN:
      goto L13894;
    case AND:
      goto L16212;
    case IOR:
      goto L16440;
    case XOR:
      goto L16455;
    case FMA:
      goto L16650;
    case FLOAT:
      goto L19972;
    case UNSIGNED_FLOAT:
      goto L20030;
    case VEC_SELECT:
      goto L22127;
    case VEC_MERGE:
      goto L34586;
    case VEC_CONCAT:
      goto L34631;
    case VEC_DUPLICATE:
      goto L41600;
    case REG:
    case SUBREG:
    case MEM:
      goto L61135;
    default:
      goto L61136;
   }
 L61135: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L11600;
    }
 L61136: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L11726;
    }
 L61160: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L34578;
    }
  goto ret0;

 L61175: ATTRIBUTE_UNUSED_LABEL
  return recog_82 (x0, insn, pnum_clobbers);

 L12548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L12549;
    }
  goto ret0;

 L12549: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L12550;
    }
  goto ret0;

 L12550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L12551;
    }
  goto ret0;

 L12551: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L12552;
    }
  goto ret0;

 L12552: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands) && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1166;  /* *addv16sf3_mask */
    }
  goto ret0;

 L12584: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L12585;
    }
  goto ret0;

 L12585: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L12586;
    }
  goto ret0;

 L12586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L12587;
    }
  goto ret0;

 L12587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L12588;
    }
  goto ret0;

 L12588: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands) && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1170;  /* *subv16sf3_mask */
    }
  goto ret0;

 L13060: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13061;
    }
  goto ret0;

 L13061: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13062;
    }
  goto ret0;

 L13062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L13063;
    }
  goto ret0;

 L13063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L13064;
    }
  goto ret0;

 L13064: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands) && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1222;  /* *mulv16sf3_mask */
    }
  goto ret0;

 L13356: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13357;
    }
  goto ret0;

 L13357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13358;
    }
  goto ret0;

 L13358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L13359;
    }
  goto ret0;

 L13359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L13360;
    }
  goto ret0;

 L13360: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1254;  /* avx512f_divv16sf3_mask */
    }
  goto ret0;

 L13595: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13596;
    }
  goto ret0;

 L13596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13597;
    }
  goto ret0;

 L13597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L13598;
    }
  goto ret0;

 L13598: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1287;  /* avx512f_sqrtv16sf2_mask */
    }
  goto ret0;

 L13858: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L61224;
  goto ret0;

 L61224: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13859;
    }
 L61225: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L14291;
    }
  goto ret0;

 L13859: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13860;
    }
  x3 = XEXP (x2, 0);
  goto L61225;

 L13860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L13861;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61225;

 L13861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L13862;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61225;

 L13862: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V16SFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1324;  /* *smaxv16sf3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61225;

 L14291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L14292;
    }
  goto ret0;

 L14292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L14293;
    }
  goto ret0;

 L14293: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L14294;
    }
  goto ret0;

 L14294: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1372;  /* *smaxv16sf3_mask */
    }
  goto ret0;

 L13894: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L61226;
  goto ret0;

 L61226: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13895;
    }
 L61227: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L14327;
    }
  goto ret0;

 L13895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13896;
    }
  x3 = XEXP (x2, 0);
  goto L61227;

 L13896: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L13897;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61227;

 L13897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L13898;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61227;

 L13898: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V16SFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1328;  /* *sminv16sf3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61227;

 L14327: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L14328;
    }
  goto ret0;

 L14328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L14329;
    }
  goto ret0;

 L14329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L14330;
    }
  goto ret0;

 L14330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1376;  /* *sminv16sf3_mask */
    }
  goto ret0;

 L16212: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L61228;
  goto ret0;

 L61228: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L16213;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16426;
    }
  goto ret0;

 L16213: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L16214;
    }
  goto ret0;

 L16214: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16215;
    }
  goto ret0;

 L16215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L16216;
    }
  goto ret0;

 L16216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L16217;
    }
  goto ret0;

 L16217: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1565;  /* avx512f_andnotv16sf3_mask */
    }
  goto ret0;

 L16426: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16427;
    }
  goto ret0;

 L16427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L16428;
    }
  goto ret0;

 L16428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L16429;
    }
  goto ret0;

 L16429: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (AND, V16SFmode, operands))))
    {
      return 1593;  /* *andv16sf3_mask */
    }
  goto ret0;

 L16440: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16441;
    }
  goto ret0;

 L16441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16442;
    }
  goto ret0;

 L16442: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L16443;
    }
  goto ret0;

 L16443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L16444;
    }
  goto ret0;

 L16444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (IOR, V16SFmode, operands))))
    {
      return 1595;  /* *iorv16sf3_mask */
    }
  goto ret0;

 L16455: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16456;
    }
  goto ret0;

 L16456: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16457;
    }
  goto ret0;

 L16457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L16458;
    }
  goto ret0;

 L16458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L16459;
    }
  goto ret0;

 L16459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (XOR, V16SFmode, operands))))
    {
      return 1597;  /* *xorv16sf3_mask */
    }
  goto ret0;

 L16650: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L61232;
  goto ret0;

 L61232: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17560;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16651;
    }
 L61231: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16789;
    }
  goto ret0;

 L17560: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SFmode)
    goto L61233;
  goto ret0;

 L61233: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L17561;
    }
 L61234: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L17714;
    }
  goto ret0;

 L17561: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L17562;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L17562: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L61236;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L61236: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18168;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L17563;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L18168: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18169;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L18169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L18170;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L18170: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L18171;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L18171: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1767;  /* fma_fnmsub_v16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L17563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L17564;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L17564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L17565;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L17565: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1713;  /* fma_fnmadd_v16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61234;

 L17714: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L17715;
    }
  goto ret0;

 L17715: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L61239;
  goto ret0;

 L61239: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18336;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L17716;
    }
 L61238: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L17810;
    }
  goto ret0;

 L18336: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SFmode)
    goto L61240;
  goto ret0;

 L61240: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18337;
    }
 L61241: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18439;
    }
  goto ret0;

 L18337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18338;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61241;

 L18338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L18339;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61241;

 L18339: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1782;  /* avx512f_fnmsub_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61241;

 L18439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18440;
  goto ret0;

 L18440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L18441;
    }
  goto ret0;

 L18441: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1790;  /* avx512f_fnmsub_v16sf_mask3 */
    }
  goto ret0;

 L17716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17717;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61238;

 L17717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L17718;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61238;

 L17718: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1728;  /* avx512f_fnmadd_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61238;

 L17810: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17811;
  goto ret0;

 L17811: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L17812;
    }
  goto ret0;

 L17812: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1736;  /* avx512f_fnmadd_v16sf_mask3 */
    }
  goto ret0;

 L16651: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16652;
    }
  x3 = XEXP (x2, 0);
  goto L61231;

 L16652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L61243;
  x3 = XEXP (x2, 0);
  goto L61231;

 L61243: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17090;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L16653;
    }
  x3 = XEXP (x2, 0);
  goto L61231;

 L17090: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17091;
    }
  x3 = XEXP (x2, 0);
  goto L61231;

 L17091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L17092;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61231;

 L17092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L17093;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61231;

 L17093: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1669;  /* fma_fmsub_v16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61231;

 L16653: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L16654;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61231;

 L16654: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L16655;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61231;

 L16655: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1625;  /* fma_fmadd_v16sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61231;

 L16789: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16790;
    }
  goto ret0;

 L16790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L61246;
  goto ret0;

 L61246: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17243;
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L16791;
    }
 L61245: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L16877;
    }
  goto ret0;

 L17243: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SFmode)
    goto L61247;
  goto ret0;

 L61247: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17244;
    }
 L61248: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17394;
    }
  goto ret0;

 L17244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17245;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61248;

 L17245: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L17246;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61248;

 L17246: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1684;  /* avx512f_fmsub_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61248;

 L17394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17395;
  goto ret0;

 L17395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L17396;
    }
  goto ret0;

 L17396: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1696;  /* avx512f_fmsub_v16sf_mask3 */
    }
  goto ret0;

 L16791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L16792;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61245;

 L16792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L16793;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61245;

 L16793: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1640;  /* avx512f_fmadd_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61245;

 L16877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L16878;
  goto ret0;

 L16878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L16879;
    }
  goto ret0;

 L16879: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1648;  /* avx512f_fmadd_v16sf_mask3 */
    }
  goto ret0;

 L19972: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L19973;
    }
  goto ret0;

 L19973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L19974;
    }
  goto ret0;

 L19974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L19975;
    }
  goto ret0;

 L19975: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1933;  /* floatv16siv16sf2_mask */
    }
  goto ret0;

 L20030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L20031;
    }
  goto ret0;

 L20031: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L20032;
    }
  goto ret0;

 L20032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L20033;
    }
  goto ret0;

 L20033: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1941;  /* ufloatv16siv16sf2_mask */
    }
  goto ret0;

 L22127: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V32SFmode:
      goto L61249;
    case V16SFmode:
      goto L61250;
    default:
      break;
    }
  goto ret0;

 L61249: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L22128;
  goto ret0;

 L22128: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SFmode)
    goto L61251;
  goto ret0;

 L61251: ATTRIBUTE_UNUSED_LABEL
  return recog_83 (x0, insn, pnum_clobbers);

 L61250: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L42479;
    }
  goto ret0;

 L42479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) >= 1)
    {
      operands[2] = x3;
      goto L42480;
    }
  goto ret0;

 L42480: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L42481;
    }
  goto ret0;

 L42481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L42482;
    }
  goto ret0;

 L42482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L42483;
    }
  goto ret0;

 L42483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL)
   && avx_vpermilp_parallel (operands[2], V16SFmode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4064;  /* *avx512f_vpermilpv16sf_mask */
    }
  goto ret0;

 L34586: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L34587;
    }
  goto ret0;

 L34587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V16SFmode
      && GET_CODE (x3) == VEC_DUPLICATE)
    goto L34588;
  goto ret0;

 L34588: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L34589;
    }
  goto ret0;

 L34589: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L34590;
    }
  goto ret0;

 L34590: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[4] = x2;
      goto L34591;
    }
  goto ret0;

 L34591: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L34592;
    }
  goto ret0;

 L34592: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3382;  /* avx512f_vinsertf32x4_1_mask */
    }
  goto ret0;

 L34631: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L34632;
    }
  goto ret0;

 L34632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L34633;
  goto ret0;

 L34633: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L34634;
    }
  goto ret0;

 L34634: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 8)
    goto L34635;
  goto ret0;

 L34635: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (GET_CODE (x5) == CONST_INT)
    goto L61260;
  goto ret0;

 L61260: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x5, 0) == XWINT (x5, 0))
    switch ((int) XWINT (x5, 0))
      {
      case 8LL:
        goto L34636;
      case 0LL:
        goto L34704;
      default:
        break;
      }
  goto ret0;

 L34636: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34637;
  goto ret0;

 L34637: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34638;
  goto ret0;

 L34638: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34639;
  goto ret0;

 L34639: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34640;
  goto ret0;

 L34640: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34641;
  goto ret0;

 L34641: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34642;
  goto ret0;

 L34642: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L34643;
  goto ret0;

 L34643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L34644;
    }
  goto ret0;

 L34644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34645;
    }
  goto ret0;

 L34645: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 3386;  /* vec_set_lo_v16sf_mask */
    }
  goto ret0;

 L34704: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34705;
  goto ret0;

 L34705: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34706;
  goto ret0;

 L34706: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34707;
  goto ret0;

 L34707: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 4);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34708;
  goto ret0;

 L34708: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 5);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34709;
  goto ret0;

 L34709: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 6);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34710;
  goto ret0;

 L34710: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 7);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34711;
  goto ret0;

 L34711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L34712;
    }
  goto ret0;

 L34712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L34713;
    }
  goto ret0;

 L34713: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11763 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 3390;  /* vec_set_hi_v16sf_mask */
    }
  goto ret0;

 L41600: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L61262;
    case V4SFmode:
      goto L61263;
    case V2SFmode:
      goto L61265;
    case V8SFmode:
      goto L61266;
    default:
      break;
    }
  goto ret0;

 L61262: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41601;
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L42023;
    }
  goto ret0;

 L41601: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L41602;
    }
  goto ret0;

 L41602: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41603;
  goto ret0;

 L41603: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41604;
  goto ret0;

 L41604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L41605;
    }
  goto ret0;

 L41605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41606;
    }
  goto ret0;

 L41606: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3938;  /* avx512f_vec_dupv16sf_mask */
    }
  goto ret0;

 L42023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L42024;
    }
  goto ret0;

 L42024: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L42025;
    }
  goto ret0;

 L42025: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3994;  /* avx512f_vec_dup_gprv16sf_mask */
    }
  goto ret0;

 L61263: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L41815;
    }
  goto ret0;

 L41815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L41816;
    }
  goto ret0;

 L41816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L41817;
    }
  goto ret0;

 L41817: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3962;  /* avx512f_broadcastv16sf_mask */
    }
  goto ret0;

 L61265: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L42279;
  goto ret0;

 L42279: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L42280;
    }
  goto ret0;

 L42280: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L42281;
  goto ret0;

 L42281: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42282;
  goto ret0;

 L42282: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L42283;
  goto ret0;

 L42283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L42284;
    }
  goto ret0;

 L42284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L42285;
    }
  goto ret0;

 L42285: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4035;  /* avx512dq_broadcastv16sf_mask */
    }
  goto ret0;

 L61266: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L42342;
    }
  goto ret0;

 L42342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L42343;
    }
  goto ret0;

 L42343: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L42344;
    }
  goto ret0;

 L42344: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16904 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4043;  /* avx512dq_broadcastv16sf_mask_1 */
    }
  goto ret0;

 L11600: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L11601;
    }
  x2 = XEXP (x1, 0);
  goto L61136;

 L11601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11602;
    }
  x2 = XEXP (x1, 0);
  goto L61136;

 L11602: ATTRIBUTE_UNUSED_LABEL
  if (
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1024;  /* avx512f_loadv16sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61136;

 L11726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L11727;
    }
  x2 = XEXP (x1, 0);
  goto L61160;

 L11727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L11728;
    }
  x2 = XEXP (x1, 0);
  goto L61160;

 L11728: ATTRIBUTE_UNUSED_LABEL
  if (
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1042;  /* avx512f_blendmv16sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61160;

 L34578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SFmode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L34579;
  goto ret0;

 L34579: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L34580;
    }
  goto ret0;

 L34580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34581;
    }
  goto ret0;

 L34581: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3381;  /* *avx512f_vinsertf32x4_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_85 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L61267;
    case 2:
      goto L61270;
    case 3:
      goto L61273;
    case 4:
      goto L61276;
    default:
      break;
    }
  goto ret0;

 L61267: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L11956;
    case 155LL:
      goto L13489;
    case 156LL:
      goto L13743;
    case 160LL:
      goto L24180;
    case 172LL:
      goto L39524;
    case 173LL:
      goto L39588;
    case 174LL:
      goto L39688;
    case 141LL:
      goto L44636;
    default:
      break;
    }
  goto ret0;

 L11956: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L11957;
    }
  goto ret0;

 L11957: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1074;  /* *avx512f_loadups512 */
    }
  goto ret0;

 L13489: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13490;
    }
  goto ret0;

 L13490: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1271;  /* *rcp14v16sf */
    }
  goto ret0;

 L13743: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13744;
    }
  goto ret0;

 L13744: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1307;  /* *rsqrt14v16sf */
    }
  goto ret0;

 L24180: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L24181;
    }
  goto ret0;

 L24181: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2374;  /* avx512f_getexpv16sf */
    }
  goto ret0;

 L39524: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L39525;
    }
  goto ret0;

 L39525: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3731;  /* avx512er_exp2v16sf */
    }
  goto ret0;

 L39588: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L39589;
    }
  goto ret0;

 L39589: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3739;  /* *avx512er_rcp28v16sf */
    }
  goto ret0;

 L39688: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L39689;
    }
  goto ret0;

 L39689: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3751;  /* *avx512er_rsqrt28v16sf */
    }
  goto ret0;

 L44636: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L44637;
    }
  goto ret0;

 L44637: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17888 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4318;  /* *avx512f_vcvtph2ps512 */
    }
  goto ret0;

 L61270: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 48LL:
      goto L14618;
    case 49LL:
      goto L14654;
    case 188LL:
      goto L15122;
    case 158LL:
      goto L23784;
    case 82LL:
      goto L25100;
    case 143LL:
      goto L41185;
    case 136LL:
      goto L42572;
    case 161LL:
      goto L50945;
    default:
      break;
    }
  goto ret0;

 L14618: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L14619;
    }
  goto ret0;

 L14619: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L14620;
    }
  goto ret0;

 L14620: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1410;  /* *ieee_sminv16sf3 */
    }
  goto ret0;

 L14654: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L14655;
    }
  goto ret0;

 L14655: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L14656;
    }
  goto ret0;

 L14656: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1416;  /* *ieee_smaxv16sf3 */
    }
  goto ret0;

 L15122: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L15123;
    }
  goto ret0;

 L15123: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L15124;
    }
  goto ret0;

 L15124: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 1436;  /* *reducepv16sf */
    }
  goto ret0;

 L23784: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L23785;
    }
  goto ret0;

 L23785: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L23786;
    }
  goto ret0;

 L23786: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2332;  /* avx512f_scalefv16sf */
    }
  goto ret0;

 L25100: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L25101;
    }
  goto ret0;

 L25101: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L25102;
    }
  goto ret0;

 L25102: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2462;  /* avx512f_rndscalev16sf */
    }
  goto ret0;

 L41185: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L41186;
    }
  goto ret0;

 L41186: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L41187;
    }
  goto ret0;

 L41187: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 537 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3889;  /* avx512f_permvarv16sf */
    }
  goto ret0;

 L42572: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L42573;
    }
  goto ret0;

 L42573: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L42574;
    }
  goto ret0;

 L42574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4075;  /* avx512f_vpermilvarv16sf3 */
    }
  goto ret0;

 L50945: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L50946;
    }
  goto ret0;

 L50946: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L50947;
    }
  goto ret0;

 L50947: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4615;  /* avx512f_getmantv16sf */
    }
  goto ret0;

 L61273: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 123LL:
      goto L18630;
    case 147LL:
      goto L42679;
    case 148LL:
      goto L43165;
    case 145LL:
      goto L46963;
    case 164LL:
      goto L50410;
    case 166LL:
      goto L50578;
    case 190LL:
      goto L50655;
    default:
      break;
    }
  goto ret0;

 L18630: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L18631;
    }
  goto ret0;

 L18631: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L18632;
    }
  goto ret0;

 L18632: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V16SFmode)
    goto L61292;
  goto ret0;

 L61292: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19104;
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L18633;
    }
  goto ret0;

 L19104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L19105;
    }
  goto ret0;

 L19105: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1853;  /* *fma_fmsubadd_v16sf */
    }
  goto ret0;

 L18633: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1807;  /* *fma_fmaddsub_v16sf */
    }
  goto ret0;

 L42679: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L42680;
    }
  goto ret0;

 L42680: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L42681;
    }
  goto ret0;

 L42681: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L42682;
    }
  goto ret0;

 L42682: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4089;  /* avx512f_vpermi2varv16sf3 */
    }
  goto ret0;

 L43165: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L43166;
    }
  goto ret0;

 L43166: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L43167;
    }
  goto ret0;

 L43167: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L43168;
    }
  goto ret0;

 L43168: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4143;  /* avx512f_vpermt2varv16sf3 */
    }
  goto ret0;

 L46963: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16SFmode:
      goto L61293;
    case V8SFmode:
      goto L61294;
    default:
      break;
    }
 L47563: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L47564;
  goto ret0;

 L61293: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L46964;
    }
  goto L47563;

 L46964: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, HImode))
    {
      operands[7] = x2;
      goto L46965;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46965: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L46966;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61295;
    case DImode:
      goto L61296;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L61295: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46967;
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46967: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L46968;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46968: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[3] = x4;
      goto L46969;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46969: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46970;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46970: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4403;  /* *avx512f_gathersiv16sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L61296: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46992;
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46992: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L46993;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46993: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[3] = x4;
      goto L46994;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46994: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46995;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L46995: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4404;  /* *avx512f_gathersiv16sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L61294: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L48164;
    }
  goto L47563;

 L48164: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L48165;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48165: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L48166;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48166: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61297;
    case DImode:
      goto L61298;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L61297: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48167;
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48167: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48168;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48168: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48169;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48169: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48170;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4451;  /* *avx512f_gatherdiv16sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L61298: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48192;
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48192: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L48193;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48193: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48194;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48195;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L48195: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4452;  /* *avx512f_gatherdiv16sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47563;

 L47564: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L61299;
    case QImode:
      goto L61300;
    default:
      break;
    }
  goto ret0;

 L61299: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L47565;
    }
  goto ret0;

 L47565: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[5] = x2;
      goto L47566;
    }
  goto ret0;

 L47566: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61301;
    case DImode:
      goto L61302;
    default:
      break;
    }
  goto ret0;

 L61301: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47567;
  goto ret0;

 L47567: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47568;
    }
  goto ret0;

 L47568: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L47569;
    }
  goto ret0;

 L47569: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47570;
    }
  goto ret0;

 L47570: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4427;  /* *avx512f_gathersiv16sf_2 */
    }
  goto ret0;

 L61302: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47592;
  goto ret0;

 L47592: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47593;
    }
  goto ret0;

 L47593: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L47594;
    }
  goto ret0;

 L47594: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47595;
    }
  goto ret0;

 L47595: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4428;  /* *avx512f_gathersiv16sf_2 */
    }
  goto ret0;

 L61300: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L48765;
    }
  goto ret0;

 L48765: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[5] = x2;
      goto L48766;
    }
  goto ret0;

 L48766: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61303;
    case DImode:
      goto L61304;
    default:
      break;
    }
  goto ret0;

 L61303: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48767;
  goto ret0;

 L48767: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L48768;
    }
  goto ret0;

 L48768: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48769;
    }
  goto ret0;

 L48769: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48770;
    }
  goto ret0;

 L48770: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4475;  /* *avx512f_gatherdiv16sf_2 */
    }
  goto ret0;

 L61304: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48792;
  goto ret0;

 L48792: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L48793;
    }
  goto ret0;

 L48793: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48794;
    }
  goto ret0;

 L48794: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48795;
    }
  goto ret0;

 L48795: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4476;  /* *avx512f_gatherdiv16sf_2 */
    }
  goto ret0;

 L50410: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L50411;
    }
  goto ret0;

 L50411: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L50412;
    }
  goto ret0;

 L50412: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L50413;
    }
  goto ret0;

 L50413: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4546;  /* avx512f_compressv16sf_mask */
    }
  goto ret0;

 L50578: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L50579;
    }
  goto ret0;

 L50579: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L50580;
    }
  goto ret0;

 L50580: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L50581;
    }
  goto ret0;

 L50581: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4570;  /* avx512f_expandv16sf_mask */
    }
  goto ret0;

 L50655: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L50656;
    }
  goto ret0;

 L50656: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L50657;
    }
  goto ret0;

 L50657: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50658;
    }
  goto ret0;

 L50658: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 4581;  /* avx512dq_rangepv16sf */
    }
  goto ret0;

 L61276: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 157)
    goto L24514;
  goto ret0;

 L24514: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L24515;
    }
  goto ret0;

 L24515: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L24516;
    }
  goto ret0;

 L24516: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L24517;
    }
  goto ret0;

 L24517: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24518;
    }
  goto ret0;

 L24518: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2414;  /* avx512f_fixupimmv16sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_86 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L22105;
    }
 L61320: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L22385;
    }
 L61321: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L25362;
    }
  goto ret0;

 L22105: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L22106;
    }
  x3 = XEXP (x2, 0);
  goto L61320;

 L22106: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L22107;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22107: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61322;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L61322: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L22108;
      case 0LL:
        goto L22218;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22108: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L22109;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22109: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22110;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22110: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L22111;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22111: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22112;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22112: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L22113;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22113: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22114;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22114: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L22115;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22115: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22116;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22116: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L22117;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22117: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22118;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22118: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L22119;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22120;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22120: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L22121;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22121: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L22122;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22122: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 5732 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2205;  /* *avx512f_unpckhps512 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22218: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L22219;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22219: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22220;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22220: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L22221;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22221: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22222;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L22223;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22223: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22224;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22224: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L22225;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22225: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22226;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22226: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L22227;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22227: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22228;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22228: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L22229;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22229: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22230;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22230: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L22231;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22231: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22232;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22232: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)]
      && 
#line 5820 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2211;  /* *avx512f_unpcklps512 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61320;

 L22385: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L22386;
  x3 = XEXP (x2, 0);
  goto L61321;

 L22386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L22387;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22387: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61324;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L61324: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L22388;
      case 0LL:
        goto L22498;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22388: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22389;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22389: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22390;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22390: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22391;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22391: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22392;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22392: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22393;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22393: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22394;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22394: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22395;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22395: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22396;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22396: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22397;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22397: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22398;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22398: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22399;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22399: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22400;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22400: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22401;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22401: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L22402;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22402: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 5960 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2221;  /* *avx512f_movshdup512 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22498: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22499;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22499: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22500;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22500: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22501;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22501: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22502;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22502: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22503;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22503: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22504;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22504: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22505;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22505: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22506;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22506: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22507;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22507: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22508;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22508: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22509;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22509: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22510;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22510: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22511;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22511: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22512;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L22512: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)]
      && 
#line 6013 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2227;  /* *avx512f_movsldup512 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61321;

 L25362: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L25363;
    }
  goto ret0;

 L25363: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L25364;
  goto ret0;

 L25364: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61326;
  goto ret0;

 L61326: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L25365;
    }
 L61327: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35054;
    }
  goto ret0;

 L25365: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L25366;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25366: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_16_to_19_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L25367;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25367: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_16_to_19_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L25368;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25368: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L25369;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25369: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L25370;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25370: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_20_to_23_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L25371;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25371: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_20_to_23_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L25372;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25372: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[11] = x3;
      goto L25373;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25373: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[12] = x3;
      goto L25374;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25374: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (const_24_to_27_operand (x3, VOIDmode))
    {
      operands[13] = x3;
      goto L25375;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25375: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (const_24_to_27_operand (x3, VOIDmode))
    {
      operands[14] = x3;
      goto L25376;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25376: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[15] = x3;
      goto L25377;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25377: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[16] = x3;
      goto L25378;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25378: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (const_28_to_31_operand (x3, VOIDmode))
    {
      operands[17] = x3;
      goto L25379;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25379: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (const_28_to_31_operand (x3, VOIDmode))
    {
      operands[18] = x3;
      goto L25380;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L25380: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7932 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
       && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
       && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
       && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)
       && INTVAL (operands[3]) == (INTVAL (operands[11]) - 8)
       && INTVAL (operands[4]) == (INTVAL (operands[12]) - 8)
       && INTVAL (operands[5]) == (INTVAL (operands[13]) - 8)
       && INTVAL (operands[6]) == (INTVAL (operands[14]) - 8)
       && INTVAL (operands[3]) == (INTVAL (operands[15]) - 12)
       && INTVAL (operands[4]) == (INTVAL (operands[16]) - 12)
       && INTVAL (operands[5]) == (INTVAL (operands[17]) - 12)
       && INTVAL (operands[6]) == (INTVAL (operands[18]) - 12))))
    {
      return 2490;  /* avx512f_shufps512_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L61327;

 L35054: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35055;
    }
  goto ret0;

 L35055: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35056;
    }
  goto ret0;

 L35056: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35057;
    }
  goto ret0;

 L35057: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35058;
    }
  goto ret0;

 L35058: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35059;
    }
  goto ret0;

 L35059: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35060;
    }
  goto ret0;

 L35060: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L35061;
    }
  goto ret0;

 L35061: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[11] = x3;
      goto L35062;
    }
  goto ret0;

 L35062: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[12] = x3;
      goto L35063;
    }
  goto ret0;

 L35063: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[13] = x3;
      goto L35064;
    }
  goto ret0;

 L35064: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[14] = x3;
      goto L35065;
    }
  goto ret0;

 L35065: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[15] = x3;
      goto L35066;
    }
  goto ret0;

 L35066: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[16] = x3;
      goto L35067;
    }
  goto ret0;

 L35067: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[17] = x3;
      goto L35068;
    }
  goto ret0;

 L35068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (const_16_to_31_operand (x3, VOIDmode))
    {
      operands[18] = x3;
      goto L35069;
    }
  goto ret0;

 L35069: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3)
       && INTVAL (operands[11]) == (INTVAL (operands[12]) - 1)
       && INTVAL (operands[11]) == (INTVAL (operands[13]) - 2)
       && INTVAL (operands[11]) == (INTVAL (operands[14]) - 3)
       && INTVAL (operands[15]) == (INTVAL (operands[16]) - 1)
       && INTVAL (operands[15]) == (INTVAL (operands[17]) - 2)
       && INTVAL (operands[15]) == (INTVAL (operands[18]) - 3))))
    {
      return 3413;  /* avx512f_shuf_f32x4_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_87 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11599;
    case UNSPEC:
      goto L61111;
    case PLUS:
      goto L12532;
    case MINUS:
      goto L12568;
    case MULT:
      goto L13044;
    case DIV:
      goto L13340;
    case SQRT:
      goto L13581;
    case SMAX:
      goto L13842;
    case SMIN:
      goto L13878;
    case AND:
      goto L16204;
    case IOR:
      goto L16433;
    case XOR:
      goto L16448;
    case FMA:
      goto L16632;
    case FLOAT:
      goto L19958;
    case UNSIGNED_FLOAT:
      goto L20016;
    case VEC_SELECT:
      goto L22103;
    case VEC_DUPLICATE:
      goto L22677;
    case VEC_CONCAT:
      goto L34615;
    case IF_THEN_ELSE:
      goto L40086;
    default:
     break;
   }
  goto ret0;

 L11599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61137;
  goto ret0;

 L61137: ATTRIBUTE_UNUSED_LABEL
  return recog_84 (x0, insn, pnum_clobbers);

 L61111: ATTRIBUTE_UNUSED_LABEL
  return recog_85 (x0, insn, pnum_clobbers);

 L12532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L12533;
    }
  goto ret0;

 L12533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L12534;
    }
  goto ret0;

 L12534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands) && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1164;  /* *addv16sf3 */
    }
  goto ret0;

 L12568: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L12569;
    }
  goto ret0;

 L12569: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L12570;
    }
  goto ret0;

 L12570: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands) && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1168;  /* *subv16sf3 */
    }
  goto ret0;

 L13044: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13045;
    }
  goto ret0;

 L13045: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13046;
    }
  goto ret0;

 L13046: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands) && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1220;  /* *mulv16sf3 */
    }
  goto ret0;

 L13340: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13341;
    }
  goto ret0;

 L13341: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13342;
    }
  goto ret0;

 L13342: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1252;  /* avx512f_divv16sf3 */
    }
  goto ret0;

 L13581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13582;
    }
  goto ret0;

 L13582: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1285;  /* avx512f_sqrtv16sf2 */
    }
  goto ret0;

 L13842: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61305;
  goto ret0;

 L61305: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13843;
    }
 L61306: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L14275;
    }
  goto ret0;

 L13843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13844;
    }
  x2 = XEXP (x1, 0);
  goto L61306;

 L13844: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V16SFmode, operands)
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1322;  /* *smaxv16sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61306;

 L14275: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L14276;
    }
  goto ret0;

 L14276: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1370;  /* *smaxv16sf3 */
    }
  goto ret0;

 L13878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61307;
  goto ret0;

 L61307: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L13879;
    }
 L61308: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L14311;
    }
  goto ret0;

 L13879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L13880;
    }
  x2 = XEXP (x1, 0);
  goto L61308;

 L13880: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V16SFmode, operands)
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1326;  /* *sminv16sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61308;

 L14311: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L14312;
    }
  goto ret0;

 L14312: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1374;  /* *sminv16sf3 */
    }
  goto ret0;

 L16204: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61309;
  goto ret0;

 L61309: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16205;
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L16419;
    }
  goto ret0;

 L16205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16206;
    }
  goto ret0;

 L16206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L16207;
    }
  goto ret0;

 L16207: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2769 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1564;  /* avx512f_andnotv16sf3 */
    }
  goto ret0;

 L16419: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L16420;
    }
  goto ret0;

 L16420: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (AND, V16SFmode, operands)))
    {
      return 1592;  /* *andv16sf3 */
    }
  goto ret0;

 L16433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L16434;
    }
  goto ret0;

 L16434: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L16435;
    }
  goto ret0;

 L16435: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (IOR, V16SFmode, operands)))
    {
      return 1594;  /* *iorv16sf3 */
    }
  goto ret0;

 L16448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L16449;
    }
  goto ret0;

 L16449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L16450;
    }
  goto ret0;

 L16450: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (XOR, V16SFmode, operands)))
    {
      return 1596;  /* *xorv16sf3 */
    }
  goto ret0;

 L16632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61312;
  goto ret0;

 L61312: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17540;
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L16633;
    }
  goto ret0;

 L17540: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L17541;
    }
  goto ret0;

 L17541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L17542;
    }
  goto ret0;

 L17542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V16SFmode)
    goto L61314;
  goto ret0;

 L61314: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L18146;
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L17543;
    }
  goto ret0;

 L18146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L18147;
    }
  goto ret0;

 L18147: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1765;  /* *fma_fnmsub_v16sf */
    }
  goto ret0;

 L17543: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1711;  /* *fma_fnmadd_v16sf */
    }
  goto ret0;

 L16633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L16634;
    }
  goto ret0;

 L16634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V16SFmode)
    goto L61316;
  goto ret0;

 L61316: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17070;
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L16635;
    }
  goto ret0;

 L17070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L17071;
    }
  goto ret0;

 L17071: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1667;  /* *fma_fmsub_v16sf */
    }
  goto ret0;

 L16635: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1623;  /* *fma_fmadd_v16sf */
    }
  goto ret0;

 L19958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L19959;
    }
  goto ret0;

 L19959: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1931;  /* floatv16siv16sf2 */
    }
  goto ret0;

 L20016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L20017;
    }
  goto ret0;

 L20017: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1939;  /* ufloatv16siv16sf2 */
    }
  goto ret0;

 L22103: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V32SFmode:
      goto L61317;
    case V16SFmode:
      goto L61318;
    default:
      break;
    }
  goto ret0;

 L61317: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L22104;
  goto ret0;

 L22104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L61319;
  goto ret0;

 L61319: ATTRIBUTE_UNUSED_LABEL
  return recog_86 (x0, insn, pnum_clobbers);

 L61318: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L42471;
    }
  goto ret0;

 L42471: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) >= 1)
    {
      operands[2] = x2;
      goto L42472;
    }
  goto ret0;

 L42472: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42473;
    }
  goto ret0;

 L42473: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1
   && avx_vpermilp_parallel (operands[2], V16SFmode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4063;  /* *avx512f_vpermilpv16sf */
    }
  goto ret0;

 L22677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L61328;
    case V4SFmode:
      goto L61329;
    case V2SFmode:
      goto L61331;
    case V8SFmode:
      goto L61332;
    default:
      break;
    }
  goto ret0;

 L61328: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L22678;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L42017;
    }
  goto ret0;

 L22678: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SFmode:
      goto L61333;
    case V4SFmode:
      goto L61334;
    default:
      break;
    }
  goto ret0;

 L61333: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L22679;
    }
  goto ret0;

 L22679: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L22680;
  goto ret0;

 L22680: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 6316 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2242;  /* avx512f_vec_dupv16sf_1 */
    }
  goto ret0;

 L61334: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L41594;
    }
  goto ret0;

 L41594: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41595;
  goto ret0;

 L41595: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3937;  /* avx512f_vec_dupv16sf */
    }
  goto ret0;

 L42017: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3993;  /* *avx512f_vec_dup_gprv16sf */
    }
  goto ret0;

 L61329: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L41809;
    }
  goto ret0;

 L41809: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16669 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3961;  /* *avx512f_broadcastv16sf */
    }
  goto ret0;

 L61331: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L42270;
  goto ret0;

 L42270: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L42271;
    }
  goto ret0;

 L42271: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L42272;
  goto ret0;

 L42272: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42273;
  goto ret0;

 L42273: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4034;  /* *avx512dq_broadcastv16sf */
    }
  goto ret0;

 L61332: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L42336;
    }
  goto ret0;

 L42336: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16904 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4042;  /* *avx512dq_broadcastv16sf_1 */
    }
  goto ret0;

 L34615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61335;
  goto ret0;

 L61335: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L34616;
    }
 L61336: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L44575;
    }
  goto ret0;

 L34616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L34617;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34617: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L34618;
    }
  x2 = XEXP (x1, 0);
  goto L61336;

 L34618: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L34619;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34619: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61337;
  x2 = XEXP (x1, 0);
  goto L61336;

 L61337: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 8LL:
        goto L34620;
      case 0LL:
        goto L34688;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  goto L61336;

 L34620: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L34621;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34621: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L34622;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34622: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L34623;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34623: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L34624;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34624: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L34625;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34625: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L34626;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34626: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 11746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 3385;  /* vec_set_lo_v16sf */
    }
  x2 = XEXP (x1, 0);
  goto L61336;

 L34688: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34689;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34689: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34690;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34690: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34691;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34691: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L34692;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34692: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34693;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34693: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34694;
  x2 = XEXP (x1, 0);
  goto L61336;

 L34694: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 11763 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 3389;  /* vec_set_hi_v16sf */
    }
  x2 = XEXP (x1, 0);
  goto L61336;

 L44575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L44576;
    }
  goto ret0;

 L44576: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 212 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4310;  /* avx_vec_concatv16sf */
    }
  goto ret0;

 L40086: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L40087;
    }
  goto ret0;

 L40087: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L40088;
    }
  goto ret0;

 L40088: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L40089;
    }
  goto ret0;

 L40089: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3785;  /* xop_pcmov_v16sf512 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_88 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L61424;
    case PLUS:
      goto L12620;
    case MINUS:
      goto L12656;
    case MULT:
      goto L13096;
    case DIV:
      goto L13383;
    case SQRT:
      goto L13619;
    case SMAX:
      goto L13930;
    case SMIN:
      goto L13966;
    case AND:
      goto L16144;
    case IOR:
      goto L16260;
    case XOR:
      goto L16275;
    case FMA:
      goto L16680;
    case FLOAT:
      goto L19996;
    case UNSIGNED_FLOAT:
      goto L20062;
    case FLOAT_TRUNCATE:
      goto L21800;
    case VEC_SELECT:
      goto L22169;
    case REG:
    case SUBREG:
    case MEM:
      goto L61402;
    default:
      goto L61403;
   }
 L61402: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L11607;
    }
 L61403: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L11733;
    }
  goto ret0;

 L61424: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L61429;
    case 2:
      goto L61432;
    case 3:
      goto L61433;
    default:
      break;
    }
  goto ret0;

 L61429: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L11975;
    case 155LL:
      goto L13508;
    case 156LL:
      goto L13762;
    default:
      break;
    }
  goto ret0;

 L11975: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L11976;
    }
  goto ret0;

 L11976: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L11977;
    }
  goto ret0;

 L11977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11978;
    }
  goto ret0;

 L11978: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1077;  /* *avx_loadups256_mask */
    }
  goto ret0;

 L13508: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13509;
    }
  goto ret0;

 L13509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13510;
    }
  goto ret0;

 L13510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13511;
    }
  goto ret0;

 L13511: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1274;  /* rcp14v8sf_mask */
    }
  goto ret0;

 L13762: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13763;
    }
  goto ret0;

 L13763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13764;
    }
  goto ret0;

 L13764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13765;
    }
  goto ret0;

 L13765: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1310;  /* rsqrt14v8sf_mask */
    }
  goto ret0;

 L61432: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 188)
    goto L15144;
  goto ret0;

 L15144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L15145;
    }
  goto ret0;

 L15145: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L15146;
    }
  goto ret0;

 L15146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L15147;
    }
  goto ret0;

 L15147: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15148;
    }
  goto ret0;

 L15148: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1439;  /* reducepv8sf_mask */
    }
  goto ret0;

 L61433: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 123)
    goto L18678;
  goto ret0;

 L18678: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61434;
  goto ret0;

 L61434: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L18679;
    }
 L61435: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L18810;
    }
  goto ret0;

 L18679: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L18680;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L18680: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V8SFmode)
    goto L61437;
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L61437: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19157;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L18681;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L19157: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L19158;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L19158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L19159;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L19159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L19160;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L19160: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1858;  /* fma_fmsubadd_v8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L18681: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L18682;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L18682: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18683;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L18683: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1812;  /* fma_fmaddsub_v8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61435;

 L18810: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L18811;
    }
  goto ret0;

 L18811: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V8SFmode)
    goto L61440;
  goto ret0;

 L61440: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19302;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L18812;
    }
 L61439: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L18950;
    }
  goto ret0;

 L19302: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SFmode)
    goto L61441;
  goto ret0;

 L61441: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L19303;
    }
 L61442: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L19453;
    }
  goto ret0;

 L19303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19304;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61442;

 L19304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19305;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61442;

 L19305: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1872;  /* avx512vl_fmsubadd_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61442;

 L19453: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19454;
  goto ret0;

 L19454: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19455;
    }
  goto ret0;

 L19455: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1884;  /* avx512vl_fmsubadd_v8sf_mask3 */
    }
  goto ret0;

 L18812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18813;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61439;

 L18813: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18814;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61439;

 L18814: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1826;  /* avx512vl_fmaddsub_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61439;

 L18950: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18951;
  goto ret0;

 L18951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18952;
    }
  goto ret0;

 L18952: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1838;  /* avx512vl_fmaddsub_v8sf_mask3 */
    }
  goto ret0;

 L12620: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61443;
  goto ret0;

 L61443: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L12621;
    }
 L61444: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L14712;
    }
  goto ret0;

 L12621: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L12622;
    }
  x3 = XEXP (x2, 0);
  goto L61444;

 L12622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L12623;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61444;

 L12623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12624;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61444;

 L12624: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands) && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1174;  /* *addv8sf3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61444;

 L14712: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L14713;
    }
  goto ret0;

 L14713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == MINUS)
    goto L14714;
  goto ret0;

 L14714: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L14715;
  goto ret0;

 L14715: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L14716;
  goto ret0;

 L14716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == CONST_INT
      && XWINT (x2, 0) == 170LL
      && 
#line 2032 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1424;  /* avx_addsubv8sf3 */
    }
  goto ret0;

 L12656: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L12657;
    }
  goto ret0;

 L12657: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L12658;
    }
  goto ret0;

 L12658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L12659;
    }
  goto ret0;

 L12659: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12660;
    }
  goto ret0;

 L12660: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands) && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1178;  /* *subv8sf3_mask */
    }
  goto ret0;

 L13096: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13097;
    }
  goto ret0;

 L13097: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13098;
    }
  goto ret0;

 L13098: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L13099;
    }
  goto ret0;

 L13099: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13100;
    }
  goto ret0;

 L13100: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands) && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1226;  /* *mulv8sf3_mask */
    }
  goto ret0;

 L13383: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13384;
    }
  goto ret0;

 L13384: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13385;
    }
  goto ret0;

 L13385: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L13386;
    }
  goto ret0;

 L13386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13387;
    }
  goto ret0;

 L13387: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1257;  /* avx_divv8sf3_mask */
    }
  goto ret0;

 L13619: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13620;
    }
  goto ret0;

 L13620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13621;
    }
  goto ret0;

 L13621: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13622;
    }
  goto ret0;

 L13622: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1290;  /* avx_sqrtv8sf2_mask */
    }
  goto ret0;

 L13930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61445;
  goto ret0;

 L61445: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13931;
    }
 L61446: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L14354;
    }
  goto ret0;

 L13931: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13932;
    }
  x3 = XEXP (x2, 0);
  goto L61446;

 L13932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L13933;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61446;

 L13933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13934;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61446;

 L13934: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8SFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1332;  /* *smaxv8sf3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61446;

 L14354: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L14355;
    }
  goto ret0;

 L14355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L14356;
    }
  goto ret0;

 L14356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14357;
    }
  goto ret0;

 L14357: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1379;  /* *smaxv8sf3_mask */
    }
  goto ret0;

 L13966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61447;
  goto ret0;

 L61447: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13967;
    }
 L61448: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L14369;
    }
  goto ret0;

 L13967: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13968;
    }
  x3 = XEXP (x2, 0);
  goto L61448;

 L13968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L13969;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61448;

 L13969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13970;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61448;

 L13970: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8SFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1336;  /* *sminv8sf3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61448;

 L14369: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L14370;
    }
  goto ret0;

 L14370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L14371;
    }
  goto ret0;

 L14371: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14372;
    }
  goto ret0;

 L14372: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1381;  /* *sminv8sf3_mask */
    }
  goto ret0;

 L16144: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61449;
  goto ret0;

 L61449: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L16145;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L16246;
    }
  goto ret0;

 L16145: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L16146;
    }
  goto ret0;

 L16146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L16147;
    }
  goto ret0;

 L16147: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L16148;
    }
  goto ret0;

 L16148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16149;
    }
  goto ret0;

 L16149: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1557;  /* avx_andnotv8sf3_mask */
    }
  goto ret0;

 L16246: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L16247;
    }
  goto ret0;

 L16247: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L16248;
    }
  goto ret0;

 L16248: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16249;
    }
  goto ret0;

 L16249: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (AND, V8SFmode, operands)) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1569;  /* *andv8sf3_mask */
    }
  goto ret0;

 L16260: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L16261;
    }
  goto ret0;

 L16261: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L16262;
    }
  goto ret0;

 L16262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L16263;
    }
  goto ret0;

 L16263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16264;
    }
  goto ret0;

 L16264: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (IOR, V8SFmode, operands)) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1571;  /* *iorv8sf3_mask */
    }
  goto ret0;

 L16275: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L16276;
    }
  goto ret0;

 L16276: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L16277;
    }
  goto ret0;

 L16277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L16278;
    }
  goto ret0;

 L16278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16279;
    }
  goto ret0;

 L16279: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (XOR, V8SFmode, operands)) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1573;  /* *xorv8sf3_mask */
    }
  goto ret0;

 L16680: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61453;
  goto ret0;

 L61453: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17593;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L16681;
    }
 L61452: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L16812;
    }
  goto ret0;

 L17593: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SFmode)
    goto L61454;
  goto ret0;

 L61454: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L17594;
    }
 L61455: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L17739;
    }
  goto ret0;

 L17594: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L17595;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L17595: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8SFmode)
    goto L61457;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L61457: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18063;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L17596;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L18063: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L18064;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L18064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L18065;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L18065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18066;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L18066: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1758;  /* *fma_fnmsub_v8sf */
    }
 L18207: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1770;  /* fma_fnmsub_v8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L17596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L17597;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L17597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17598;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L17598: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1716;  /* fma_fnmadd_v8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61455;

 L17739: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L17740;
    }
  goto ret0;

 L17740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8SFmode)
    goto L61460;
  goto ret0;

 L61460: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18363;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L17741;
    }
 L61459: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L17835;
    }
  goto ret0;

 L18363: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SFmode)
    goto L61461;
  goto ret0;

 L61461: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L18364;
    }
 L61462: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L18466;
    }
  goto ret0;

 L18364: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18365;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61462;

 L18365: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18366;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61462;

 L18366: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1784;  /* avx512vl_fnmsub_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61462;

 L18466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18467;
  goto ret0;

 L18467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18468;
    }
  goto ret0;

 L18468: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1792;  /* avx512vl_fnmsub_v8sf_mask3 */
    }
  goto ret0;

 L17741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17742;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61459;

 L17742: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17743;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61459;

 L17743: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1730;  /* avx512vl_fnmadd_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61459;

 L17835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17836;
  goto ret0;

 L17836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17837;
    }
  goto ret0;

 L17837: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1738;  /* avx512vl_fnmadd_v8sf_mask3 */
    }
  goto ret0;

 L16681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L16682;
    }
  x3 = XEXP (x2, 0);
  goto L61452;

 L16682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8SFmode)
    goto L61464;
  x3 = XEXP (x2, 0);
  goto L61452;

 L61464: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17123;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L16683;
    }
  x3 = XEXP (x2, 0);
  goto L61452;

 L17123: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L17124;
    }
  x3 = XEXP (x2, 0);
  goto L61452;

 L17124: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L17125;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61452;

 L17125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17126;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61452;

 L17126: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1672;  /* fma_fmsub_v8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61452;

 L16683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L16684;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61452;

 L16684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L16685;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61452;

 L16685: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1628;  /* fma_fmadd_v8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61452;

 L16812: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L16813;
    }
  goto ret0;

 L16813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8SFmode)
    goto L61467;
  goto ret0;

 L61467: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17268;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L16814;
    }
 L61466: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L16900;
    }
  goto ret0;

 L17268: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SFmode)
    goto L61468;
  goto ret0;

 L61468: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L17269;
    }
 L61469: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L17419;
    }
  goto ret0;

 L17269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17270;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61469;

 L17270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17271;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61469;

 L17271: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1686;  /* avx512vl_fmsub_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61469;

 L17419: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17420;
  goto ret0;

 L17420: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17421;
    }
  goto ret0;

 L17421: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1698;  /* avx512vl_fmsub_v8sf_mask3 */
    }
  goto ret0;

 L16814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L16815;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61466;

 L16815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16816;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61466;

 L16816: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1642;  /* avx512vl_fmadd_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61466;

 L16900: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L16901;
  goto ret0;

 L16901: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16902;
    }
  goto ret0;

 L16902: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1650;  /* avx512vl_fmadd_v8sf_mask3 */
    }
  goto ret0;

 L19996: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L61470;
    case V8DImode:
      goto L61471;
    default:
      break;
    }
  goto ret0;

 L61470: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L19997;
    }
  goto ret0;

 L19997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L19998;
    }
  goto ret0;

 L19998: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L19999;
    }
  goto ret0;

 L19999: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1936;  /* floatv8siv8sf2_mask */
    }
  goto ret0;

 L61471: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20855;
    }
  goto ret0;

 L20855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L20856;
    }
  goto ret0;

 L20856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20857;
    }
  goto ret0;

 L20857: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2046;  /* floatv8div8sf2_mask */
    }
  goto ret0;

 L20062: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L61472;
    case V8DImode:
      goto L61473;
    default:
      break;
    }
  goto ret0;

 L61472: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L20063;
    }
  goto ret0;

 L20063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L20064;
    }
  goto ret0;

 L20064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20065;
    }
  goto ret0;

 L20065: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1945;  /* ufloatv8siv8sf2_mask */
    }
  goto ret0;

 L61473: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20887;
    }
  goto ret0;

 L20887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L20888;
    }
  goto ret0;

 L20888: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20889;
    }
  goto ret0;

 L20889: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 2050;  /* ufloatv8div8sf2_mask */
    }
  goto ret0;

 L21800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21801;
    }
  goto ret0;

 L21801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L21802;
    }
  goto ret0;

 L21802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21803;
    }
  goto ret0;

 L21803: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2163;  /* avx512f_cvtpd2ps512_mask */
    }
  goto ret0;

 L22169: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L22170;
  goto ret0;

 L22170: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SFmode)
    goto L61474;
  goto ret0;

 L61474: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L22171;
    }
 L61475: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L22341;
    }
 L61476: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L22562;
    }
  goto ret0;

 L22171: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L22172;
    }
  x4 = XEXP (x3, 0);
  goto L61475;

 L22172: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L22173;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22173: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61477;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L61477: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 2LL:
        goto L22174;
      case 0LL:
        goto L22284;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22174: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22175;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22175: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22176;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22176: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22177;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22178;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22179;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22180;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22180: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L22181;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L22182;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L22183;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22183: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5749 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2208;  /* avx_unpckhps256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22284: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22285;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22285: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22286;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22286: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22287;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22287: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22288;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22288: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22289;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22289: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22290;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22290: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L22291;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22291: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L22292;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L22293;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22293: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5837 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2214;  /* avx_unpcklps256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61475;

 L22341: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[1]))
    goto L22342;
  x4 = XEXP (x3, 0);
  goto L61476;

 L22342: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L22343;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61479;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L61479: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L22344;
      case 0LL:
        goto L22454;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22345;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22345: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22346;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22346: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22347;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22347: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22348;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22348: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22349;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22349: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22350;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22350: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22351;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22351: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L22352;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22352: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22353;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22353: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5923 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2218;  /* avx_movshdup256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22454: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22455;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22455: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22456;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22456: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22457;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22457: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22458;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22458: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22459;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22459: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22460;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22460: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22461;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22461: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L22462;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22462: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22463;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22463: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5976 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2224;  /* avx_movsldup256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61476;

 L22562: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L22563;
    }
  goto ret0;

 L22563: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L22564;
  goto ret0;

 L22564: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22565;
    }
  goto ret0;

 L22565: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L22566;
    }
  goto ret0;

 L22566: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L22567;
    }
  goto ret0;

 L22567: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_8_to_11_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L22568;
    }
  goto ret0;

 L22568: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L22569;
    }
  goto ret0;

 L22569: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L22570;
    }
  goto ret0;

 L22570: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L22571;
    }
  goto ret0;

 L22571: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_12_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L22572;
    }
  goto ret0;

 L22572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[11] = x2;
      goto L22573;
    }
  goto ret0;

 L22573: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[12] = x2;
      goto L22574;
    }
  goto ret0;

 L22574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6057 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
       && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
       && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
       && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)))))
    {
      return 2230;  /* avx_shufps256_1_mask */
    }
  goto ret0;

 L11607: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L11608;
    }
  x2 = XEXP (x1, 0);
  goto L61403;

 L11608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11609;
    }
  x2 = XEXP (x1, 0);
  goto L61403;

 L11609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1025;  /* avx512vl_loadv8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61403;

 L11733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L11734;
    }
  goto ret0;

 L11734: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11735;
    }
  goto ret0;

 L11735: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1043;  /* avx512vl_blendmv8sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_89 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  switch (GET_CODE (x4))
    {
    case PLUS:
      goto L14881;
    case MINUS:
      goto L14962;
    default:
     break;
   }
  goto ret0;

 L14881: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14882;
  goto ret0;

 L14882: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8SFmode))
    {
      operands[1] = x6;
      goto L14883;
    }
  goto ret0;

 L14883: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14884;
  goto ret0;

 L14884: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14885;
  goto ret0;

 L14885: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14886;
  goto ret0;

 L14886: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14887;
  goto ret0;

 L14887: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14888;
  goto ret0;

 L14888: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14889;
  goto ret0;

 L14889: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14890;
  goto ret0;

 L14890: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14891;
  goto ret0;

 L14891: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14892;
  goto ret0;

 L14892: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14893;
  goto ret0;

 L14893: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14894;
  goto ret0;

 L14894: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14895;
  goto ret0;

 L14895: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14896;
  goto ret0;

 L14896: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14897;
  goto ret0;

 L14897: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L14898;
  goto ret0;

 L14898: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L14899;
  goto ret0;

 L14899: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14900;
  goto ret0;

 L14900: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14901;
  goto ret0;

 L14901: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8SFmode))
    {
      operands[2] = x6;
      goto L14902;
    }
  goto ret0;

 L14902: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14903;
  goto ret0;

 L14903: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14904;
  goto ret0;

 L14904: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14905;
  goto ret0;

 L14905: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14906;
  goto ret0;

 L14906: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14907;
  goto ret0;

 L14907: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14908;
  goto ret0;

 L14908: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14909;
  goto ret0;

 L14909: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14910;
  goto ret0;

 L14910: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14911;
  goto ret0;

 L14911: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14912;
  goto ret0;

 L14912: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14913;
  goto ret0;

 L14913: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14914;
  goto ret0;

 L14914: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14915;
  goto ret0;

 L14915: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14916;
  goto ret0;

 L14916: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L14917;
  goto ret0;

 L14917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L14918;
  goto ret0;

 L14918: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L14919;
  goto ret0;

 L14919: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14920;
  goto ret0;

 L14920: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14921;
  goto ret0;

 L14921: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14922;
  goto ret0;

 L14922: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14923;
  goto ret0;

 L14923: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L14924;
  goto ret0;

 L14924: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14925;
  goto ret0;

 L14925: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14926;
  goto ret0;

 L14926: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14927;
  goto ret0;

 L14927: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L14928;
  goto ret0;

 L14928: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14929;
  goto ret0;

 L14929: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14930;
  goto ret0;

 L14930: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14931;
  goto ret0;

 L14931: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14932;
  goto ret0;

 L14932: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L14933;
  goto ret0;

 L14933: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14934;
  goto ret0;

 L14934: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14935;
  goto ret0;

 L14935: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14936;
  goto ret0;

 L14936: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L14937;
  goto ret0;

 L14937: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L14938;
  goto ret0;

 L14938: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14939;
  goto ret0;

 L14939: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14940;
  goto ret0;

 L14940: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14941;
  goto ret0;

 L14941: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14942;
  goto ret0;

 L14942: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L14943;
  goto ret0;

 L14943: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14944;
  goto ret0;

 L14944: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14945;
  goto ret0;

 L14945: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14946;
  goto ret0;

 L14946: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L14947;
  goto ret0;

 L14947: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == PLUS)
    goto L14948;
  goto ret0;

 L14948: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14949;
  goto ret0;

 L14949: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14950;
  goto ret0;

 L14950: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14951;
  goto ret0;

 L14951: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L14952;
  goto ret0;

 L14952: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14953;
  goto ret0;

 L14953: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14954;
  goto ret0;

 L14954: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14955;
  goto ret0;

 L14955: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 2222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1432;  /* avx_haddv8sf3 */
    }
  goto ret0;

 L14962: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14963;
  goto ret0;

 L14963: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, V8SFmode))
    {
      operands[1] = x6;
      goto L14964;
    }
  goto ret0;

 L14964: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14965;
  goto ret0;

 L14965: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14966;
  goto ret0;

 L14966: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14967;
  goto ret0;

 L14967: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14968;
  goto ret0;

 L14968: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14969;
  goto ret0;

 L14969: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14970;
  goto ret0;

 L14970: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L14971;
  goto ret0;

 L14971: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14972;
  goto ret0;

 L14972: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14973;
  goto ret0;

 L14973: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14974;
  goto ret0;

 L14974: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14975;
  goto ret0;

 L14975: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14976;
  goto ret0;

 L14976: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L14977;
  goto ret0;

 L14977: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14978;
  goto ret0;

 L14978: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L14979;
  goto ret0;

 L14979: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L14980;
  goto ret0;

 L14980: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L14981;
  goto ret0;

 L14981: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14982;
  goto ret0;

 L14982: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, V8SFmode))
    {
      operands[2] = x6;
      goto L14983;
    }
  goto ret0;

 L14983: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14984;
  goto ret0;

 L14984: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14985;
  goto ret0;

 L14985: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14986;
  goto ret0;

 L14986: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14987;
  goto ret0;

 L14987: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14988;
  goto ret0;

 L14988: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14989;
  goto ret0;

 L14989: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L14990;
  goto ret0;

 L14990: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14991;
  goto ret0;

 L14991: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14992;
  goto ret0;

 L14992: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14993;
  goto ret0;

 L14993: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14994;
  goto ret0;

 L14994: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L14995;
  goto ret0;

 L14995: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L14996;
  goto ret0;

 L14996: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L14997;
  goto ret0;

 L14997: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L14998;
  goto ret0;

 L14998: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L14999;
  goto ret0;

 L14999: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L15000;
  goto ret0;

 L15000: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L15001;
  goto ret0;

 L15001: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15002;
  goto ret0;

 L15002: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L15003;
  goto ret0;

 L15003: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15004;
  goto ret0;

 L15004: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L15005;
  goto ret0;

 L15005: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15006;
  goto ret0;

 L15006: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L15007;
  goto ret0;

 L15007: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15008;
  goto ret0;

 L15008: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L15009;
  goto ret0;

 L15009: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L15010;
  goto ret0;

 L15010: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15011;
  goto ret0;

 L15011: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L15012;
  goto ret0;

 L15012: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15013;
  goto ret0;

 L15013: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L15014;
  goto ret0;

 L15014: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15015;
  goto ret0;

 L15015: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L15016;
  goto ret0;

 L15016: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15017;
  goto ret0;

 L15017: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L15018;
  goto ret0;

 L15018: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L15019;
  goto ret0;

 L15019: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L15020;
  goto ret0;

 L15020: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15021;
  goto ret0;

 L15021: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L15022;
  goto ret0;

 L15022: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15023;
  goto ret0;

 L15023: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L15024;
  goto ret0;

 L15024: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15025;
  goto ret0;

 L15025: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L15026;
  goto ret0;

 L15026: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15027;
  goto ret0;

 L15027: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L15028;
  goto ret0;

 L15028: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == MINUS)
    goto L15029;
  goto ret0;

 L15029: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15030;
  goto ret0;

 L15030: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L15031;
  goto ret0;

 L15031: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15032;
  goto ret0;

 L15032: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L15033;
  goto ret0;

 L15033: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == SFmode
      && GET_CODE (x5) == VEC_SELECT)
    goto L15034;
  goto ret0;

 L15034: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L15035;
  goto ret0;

 L15035: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_CODE (x6) == PARALLEL
      && XVECLEN (x6, 0) == 1)
    goto L15036;
  goto ret0;

 L15036: ATTRIBUTE_UNUSED_LABEL
  x7 = XVECEXP (x6, 0, 0);
  if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 2222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1433;  /* avx_hsubv8sf3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_90 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11606;
    case UNSPEC:
      goto L61392;
    case PLUS:
      goto L12604;
    case MINUS:
      goto L12640;
    case MULT:
      goto L13080;
    case DIV:
      goto L13376;
    case SQRT:
      goto L13613;
    case SMAX:
      goto L13914;
    case SMIN:
      goto L13950;
    case VEC_CONCAT:
      goto L14878;
    case AND:
      goto L16136;
    case IOR:
      goto L16253;
    case XOR:
      goto L16268;
    case FMA:
      goto L16611;
    case FLOAT:
      goto L19990;
    case UNSIGNED_FLOAT:
      goto L20048;
    case FLOAT_TRUNCATE:
      goto L21786;
    case VEC_SELECT:
      goto L22153;
    case VEC_DUPLICATE:
      goto L22656;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L61381;
    default:
      goto ret0;
   }
 L61381: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, V8SFmode))
    {
      operands[3] = x1;
      goto L15276;
    }
  goto ret0;

 L11606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61404;
  goto ret0;

 L61404: ATTRIBUTE_UNUSED_LABEL
  return recog_88 (x0, insn, pnum_clobbers);

 L61392: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L61481;
    case 2:
      goto L61486;
    case 3:
      goto L61489;
    default:
      break;
    }
  goto ret0;

 L61481: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L11969;
    case 44LL:
      goto L13472;
    case 155LL:
      goto L13502;
    case 45LL:
      goto L13733;
    case 156LL:
      goto L13756;
    default:
      break;
    }
  goto ret0;

 L11969: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L11970;
    }
  goto ret0;

 L11970: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1076;  /* *avx_loadups256 */
    }
  goto ret0;

 L13472: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13473;
    }
  goto ret0;

 L13473: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 230 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1268;  /* avx_rcpv8sf2 */
    }
  goto ret0;

 L13502: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13503;
    }
  goto ret0;

 L13503: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1273;  /* *rcp14v8sf */
    }
  goto ret0;

 L13733: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13734;
    }
  goto ret0;

 L13734: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1841 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 230 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1305;  /* avx_rsqrtv8sf2 */
    }
  goto ret0;

 L13756: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13757;
    }
  goto ret0;

 L13757: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1309;  /* *rsqrt14v8sf */
    }
  goto ret0;

 L61486: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 48LL:
      goto L14624;
    case 49LL:
      goto L14660;
    case 188LL:
      goto L15137;
    default:
      break;
    }
  goto ret0;

 L14624: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L14625;
    }
  goto ret0;

 L14625: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L14626;
    }
  goto ret0;

 L14626: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1411;  /* *ieee_sminv8sf3 */
    }
  goto ret0;

 L14660: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L14661;
    }
  goto ret0;

 L14661: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L14662;
    }
  goto ret0;

 L14662: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1417;  /* *ieee_smaxv8sf3 */
    }
  goto ret0;

 L15137: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L15138;
    }
  goto ret0;

 L15138: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L15139;
    }
  goto ret0;

 L15139: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1438;  /* *reducepv8sf */
    }
  goto ret0;

 L61489: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15230;
    case 123LL:
      goto L18595;
    default:
      break;
    }
  goto ret0;

 L15230: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L15231;
    }
  goto ret0;

 L15231: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L15232;
    }
  goto ret0;

 L15232: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15233;
    }
  goto ret0;

 L15233: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1450;  /* avx_cmpv8sf3 */
    }
  goto ret0;

 L18595: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L18596;
    }
  goto ret0;

 L18596: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L18597;
    }
  goto ret0;

 L18597: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V8SFmode)
    goto L61492;
  goto ret0;

 L61492: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19064;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L18598;
    }
  goto ret0;

 L19064: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L19065;
    }
  goto ret0;

 L19065: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3577 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1848;  /* *fma_fmsubadd_v8sf */
    }
 L19149: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1857;  /* *fma_fmsubadd_v8sf */
    }
  goto ret0;

 L18598: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3509 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1802;  /* *fma_fmaddsub_v8sf */
    }
 L18673: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1811;  /* *fma_fmaddsub_v8sf */
    }
  goto ret0;

 L12604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L12605;
    }
  goto ret0;

 L12605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L12606;
    }
  goto ret0;

 L12606: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands) && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1172;  /* *addv8sf3 */
    }
  goto ret0;

 L12640: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L12641;
    }
  goto ret0;

 L12641: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L12642;
    }
  goto ret0;

 L12642: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands) && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1176;  /* *subv8sf3 */
    }
  goto ret0;

 L13080: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13081;
    }
  goto ret0;

 L13081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13082;
    }
  goto ret0;

 L13082: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands) && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1224;  /* *mulv8sf3 */
    }
  goto ret0;

 L13376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13377;
    }
  goto ret0;

 L13377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13378;
    }
  goto ret0;

 L13378: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1256;  /* avx_divv8sf3 */
    }
  goto ret0;

 L13613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13614;
    }
  goto ret0;

 L13614: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1289;  /* avx_sqrtv8sf2 */
    }
  goto ret0;

 L13914: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61493;
  goto ret0;

 L61493: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13915;
    }
 L61494: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L14347;
    }
  goto ret0;

 L13915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13916;
    }
  x2 = XEXP (x1, 0);
  goto L61494;

 L13916: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8SFmode, operands)
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1330;  /* *smaxv8sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61494;

 L14347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L14348;
    }
  goto ret0;

 L14348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1378;  /* *smaxv8sf3 */
    }
  goto ret0;

 L13950: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61495;
  goto ret0;

 L61495: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L13951;
    }
 L61496: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L14362;
    }
  goto ret0;

 L13951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L13952;
    }
  x2 = XEXP (x1, 0);
  goto L61496;

 L13952: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8SFmode, operands)
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1334;  /* *sminv8sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61496;

 L14362: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L14363;
    }
  goto ret0;

 L14363: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1380;  /* *sminv8sf3 */
    }
  goto ret0;

 L14878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L14879;
  goto ret0;

 L14879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L14880;
  goto ret0;

 L14880: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode)
    goto L61497;
  goto ret0;

 L61497: ATTRIBUTE_UNUSED_LABEL
  return recog_89 (x0, insn, pnum_clobbers);

 L16136: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61499;
  goto ret0;

 L61499: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16137;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L16239;
    }
  goto ret0;

 L16137: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L16138;
    }
  goto ret0;

 L16138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L16139;
    }
  goto ret0;

 L16139: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1556;  /* avx_andnotv8sf3 */
    }
  goto ret0;

 L16239: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L16240;
    }
  goto ret0;

 L16240: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V8SFmode, operands)) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1568;  /* *andv8sf3 */
    }
  goto ret0;

 L16253: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L16254;
    }
  goto ret0;

 L16254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L16255;
    }
  goto ret0;

 L16255: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V8SFmode, operands)) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1570;  /* *iorv8sf3 */
    }
  goto ret0;

 L16268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L16269;
    }
  goto ret0;

 L16269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L16270;
    }
  goto ret0;

 L16270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V8SFmode, operands)) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1572;  /* *xorv8sf3 */
    }
  goto ret0;

 L16611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61502;
  goto ret0;

 L61502: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17516;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L16612;
    }
  goto ret0;

 L17516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L17517;
    }
  goto ret0;

 L17517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L17518;
    }
  goto ret0;

 L17518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V8SFmode)
    goto L61504;
  goto ret0;

 L61504: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L18041;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L17519;
    }
  goto ret0;

 L18041: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L18042;
    }
  goto ret0;

 L18042: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1756;  /* *fma_fnmsub_v8sf */
    }
 L18195: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1769;  /* *fma_fnmsub_v8sf */
    }
  goto ret0;

 L17519: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1708;  /* *fma_fnmadd_v8sf */
    }
 L17587: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1715;  /* *fma_fnmadd_v8sf */
    }
  goto ret0;

 L16612: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L16613;
    }
  goto ret0;

 L16613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V8SFmode)
    goto L61506;
  goto ret0;

 L61506: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17046;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L16614;
    }
  goto ret0;

 L17046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L17047;
    }
  goto ret0;

 L17047: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1664;  /* *fma_fmsub_v8sf */
    }
 L17115: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1671;  /* *fma_fmsub_v8sf */
    }
  goto ret0;

 L16614: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3201 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1620;  /* *fma_fmadd_v8sf */
    }
 L16675: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1627;  /* *fma_fmadd_v8sf */
    }
  goto ret0;

 L19990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L61507;
    case V8DImode:
      goto L61508;
    default:
      break;
    }
  goto ret0;

 L61507: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L19991;
    }
  goto ret0;

 L19991: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1) && 
#line 226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1935;  /* floatv8siv8sf2 */
    }
  goto ret0;

 L61508: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L20841;
    }
  goto ret0;

 L20841: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2044;  /* floatv8div8sf2 */
    }
  goto ret0;

 L20048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L61509;
    case V8DImode:
      goto L61510;
    default:
      break;
    }
  goto ret0;

 L61509: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L20049;
    }
  goto ret0;

 L20049: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1943;  /* ufloatv8siv8sf2 */
    }
  goto ret0;

 L61510: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L20873;
    }
  goto ret0;

 L20873: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 2048;  /* ufloatv8div8sf2 */
    }
  goto ret0;

 L21786: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L21787;
    }
  goto ret0;

 L21787: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4879 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2161;  /* *avx512f_cvtpd2ps512 */
    }
  goto ret0;

 L22153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L22154;
  goto ret0;

 L22154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L61511;
  goto ret0;

 L61511: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L22155;
    }
 L61512: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L22325;
    }
 L61513: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L22545;
    }
  goto ret0;

 L22155: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L22156;
    }
  x3 = XEXP (x2, 0);
  goto L61512;

 L22156: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L22157;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61514;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L61514: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L22158;
      case 0LL:
        goto L22268;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L22159;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22159: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22160;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22160: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L22161;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22161: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22162;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22162: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L22163;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22163: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22164;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22164: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 5749 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2207;  /* avx_unpckhps256 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22268: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L22269;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22269: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22270;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22270: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L22271;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22271: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22272;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22272: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L22273;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22273: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22274;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22274: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)]
      && 
#line 5837 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2213;  /* avx_unpcklps256 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61512;

 L22325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L22326;
  x3 = XEXP (x2, 0);
  goto L61513;

 L22326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L22327;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61516;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L61516: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L22328;
      case 0LL:
        goto L22438;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22329;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22329: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22330;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22330: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22331;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22331: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22332;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22332: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22333;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22333: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22334;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22334: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 5923 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2217;  /* avx_movshdup256 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22438: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22439;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22439: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22440;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22440: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22441;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22442;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22443;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22444;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)]
      && 
#line 5976 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2223;  /* avx_movsldup256 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61513;

 L22545: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L22546;
    }
  goto ret0;

 L22546: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L22547;
  goto ret0;

 L22547: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22548;
    }
  goto ret0;

 L22548: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L22549;
    }
  goto ret0;

 L22549: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L22550;
    }
  goto ret0;

 L22550: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_8_to_11_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L22551;
    }
  goto ret0;

 L22551: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L22552;
    }
  goto ret0;

 L22552: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L22553;
    }
  goto ret0;

 L22553: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L22554;
    }
  goto ret0;

 L22554: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_12_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L22555;
    }
  goto ret0;

 L22555: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6057 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && 1
   && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
       && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
       && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
       && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4))))
    {
      return 2229;  /* avx_shufps256_1 */
    }
  goto ret0;

 L22656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L22657;
  goto ret0;

 L22657: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L61518;
    case V8SFmode:
      goto L61519;
    default:
      break;
    }
  goto ret0;

 L61518: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22658;
    }
  goto ret0;

 L22658: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L22659;
  goto ret0;

 L22659: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 6292 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 230 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 2239;  /* avx2_vec_dupv8sf */
    }
  goto ret0;

 L61519: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L22672;
    }
  goto ret0;

 L22672: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L22673;
  goto ret0;

 L22673: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 6304 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 2241;  /* avx2_vec_dupv8sf_1 */
    }
  goto ret0;

 L15276: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L15277;
    }
  goto ret0;

 L15277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L15278;
    }
  goto ret0;

 L15278: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2450 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1456;  /* *avx_maskcmpv8sf3_comm */
    }
 L15302: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2466 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1460;  /* avx_maskcmpv8sf3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_91 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L23078;
    case UNSPEC:
      goto L61600;
    case VEC_DUPLICATE:
      goto L41618;
    case VEC_CONCAT:
      goto L43852;
    case REG:
    case SUBREG:
    case MEM:
      goto L61589;
    default:
      goto ret0;
   }
 L61589: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L38036;
    }
  goto ret0;

 L23078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SFmode:
      goto L61613;
    case V8SFmode:
      goto L61614;
    default:
      break;
    }
  goto ret0;

 L61613: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L35032;
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L23079;
    }
  goto ret0;

 L35032: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L35033;
    }
  goto ret0;

 L35033: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L35034;
    }
  goto ret0;

 L35034: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L35035;
  goto ret0;

 L35035: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L35036;
    }
  goto ret0;

 L35036: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L35037;
    }
  goto ret0;

 L35037: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L35038;
    }
  goto ret0;

 L35038: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L35039;
    }
  goto ret0;

 L35039: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L35040;
    }
  goto ret0;

 L35040: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L35041;
    }
  goto ret0;

 L35041: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L35042;
    }
  goto ret0;

 L35042: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L35043;
    }
  goto ret0;

 L35043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[11] = x2;
      goto L35044;
    }
  goto ret0;

 L35044: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[12] = x2;
      goto L35045;
    }
  goto ret0;

 L35045: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11941 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3)))))
    {
      return 3412;  /* avx512vl_shuf_f32x4_1_mask */
    }
  goto ret0;

 L23079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23080;
  goto ret0;

 L23080: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23081;
  goto ret0;

 L23081: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23082;
  goto ret0;

 L23082: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23083;
  goto ret0;

 L23083: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23084;
  goto ret0;

 L23084: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23085;
  goto ret0;

 L23085: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23086;
  goto ret0;

 L23086: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23087;
  goto ret0;

 L23087: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L23088;
  goto ret0;

 L23088: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L23089;
    }
  goto ret0;

 L23089: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23090;
    }
  goto ret0;

 L23090: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6871 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && TARGET_AVX512DQ)))
    {
      return 2281;  /* vec_extract_hi_v16sf_mask */
    }
  goto ret0;

 L61614: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L42496;
    }
  goto ret0;

 L42496: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) >= 1)
    {
      operands[2] = x3;
      goto L42497;
    }
  goto ret0;

 L42497: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L42498;
    }
  goto ret0;

 L42498: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L42499;
    }
  goto ret0;

 L42499: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42500;
    }
  goto ret0;

 L42500: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (32 == 64 || TARGET_AVX512VL)
   && avx_vpermilp_parallel (operands[2], V8SFmode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 4066;  /* *avx_vpermilpv8sf_mask */
    }
  goto ret0;

 L61600: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L61615;
    case 1:
      goto L61616;
    case 4:
      goto L61617;
    case 3:
      goto L61621;
    default:
      break;
    }
  goto ret0;

 L61615: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23836;
    case 82LL:
      goto L25152;
    case 143LL:
      goto L41162;
    case 136LL:
      goto L42594;
    case 161LL:
      goto L50997;
    default:
      break;
    }
  goto ret0;

 L23836: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L23837;
    }
  goto ret0;

 L23837: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L23838;
    }
  goto ret0;

 L23838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L23839;
    }
  goto ret0;

 L23839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23840;
    }
  goto ret0;

 L23840: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2338;  /* avx512vl_scalefv8sf_mask */
    }
  goto ret0;

 L25152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L25153;
    }
  goto ret0;

 L25153: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25154;
    }
  goto ret0;

 L25154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L25155;
    }
  goto ret0;

 L25155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25156;
    }
  goto ret0;

 L25156: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2468;  /* avx512vl_rndscalev8sf_mask */
    }
  goto ret0;

 L41162: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L41163;
    }
  goto ret0;

 L41163: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L41164;
    }
  goto ret0;

 L41164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L41165;
    }
  goto ret0;

 L41165: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41166;
    }
  goto ret0;

 L41166: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 3886;  /* avx2_permvarv8sf_mask */
    }
  goto ret0;

 L42594: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L42595;
    }
  goto ret0;

 L42595: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L42596;
    }
  goto ret0;

 L42596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L42597;
    }
  goto ret0;

 L42597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L42598;
    }
  goto ret0;

 L42598: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (32 == 64 || TARGET_AVX512VL)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 4078;  /* avx_vpermilvarv8sf3_mask */
    }
  goto ret0;

 L50997: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L50998;
    }
  goto ret0;

 L50998: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L50999;
    }
  goto ret0;

 L50999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L51000;
    }
  goto ret0;

 L51000: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51001;
    }
  goto ret0;

 L51001: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4621;  /* avx512vl_getmantv8sf_mask */
    }
  goto ret0;

 L61616: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 160LL:
      goto L24226;
    case 141LL:
      goto L44629;
    default:
      break;
    }
  goto ret0;

 L24226: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L24227;
    }
  goto ret0;

 L24227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L24228;
    }
  goto ret0;

 L24228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L24229;
    }
  goto ret0;

 L24229: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2380;  /* avx512vl_getexpv8sf_mask */
    }
  goto ret0;

 L44629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L44630;
    }
  goto ret0;

 L44630: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L44631;
    }
  goto ret0;

 L44631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L44632;
    }
  goto ret0;

 L44632: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL)))
    {
      return 4317;  /* vcvtph2ps256_mask */
    }
  goto ret0;

 L61617: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24578;
  goto ret0;

 L24578: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L24579;
    }
  goto ret0;

 L24579: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L24580;
    }
  goto ret0;

 L24580: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L24581;
    }
  goto ret0;

 L24581: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24582;
    }
  goto ret0;

 L24582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[5] = x2;
      goto L24583;
    }
 L24808: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24809;
  goto ret0;

 L24583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24584;
    }
  x2 = XEXP (x1, 1);
  goto L24808;

 L24584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2420;  /* avx512vl_fixupimmv8sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24808;

 L24809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24810;
    }
  goto ret0;

 L24810: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2440;  /* avx512vl_fixupimmv8sf_mask */
    }
  goto ret0;

 L61621: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 147LL:
      goto L42755;
    case 149LL:
      goto L43019;
    case 148LL:
      goto L43241;
    case 190LL:
      goto L50703;
    default:
      break;
    }
  goto ret0;

 L42755: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L42756;
    }
  goto ret0;

 L42756: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L42757;
    }
  goto ret0;

 L42757: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L42758;
    }
  goto ret0;

 L42758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L42759;
    }
  goto ret0;

 L42759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42760;
    }
  goto ret0;

 L42760: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4098;  /* avx512vl_vpermi2varv8sf3_maskz_1 */
    }
  goto ret0;

 L43019: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L43020;
    }
  goto ret0;

 L43020: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L43021;
    }
  goto ret0;

 L43021: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L43022;
    }
  goto ret0;

 L43022: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43023;
  goto ret0;

 L43023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43024;
    }
  goto ret0;

 L43024: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4128;  /* avx512vl_vpermi2varv8sf3_mask */
    }
  goto ret0;

 L43241: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L43242;
    }
  goto ret0;

 L43242: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L43243;
    }
  goto ret0;

 L43243: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L43244;
    }
  goto ret0;

 L43244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L43245;
    }
 L43508: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43509;
  goto ret0;

 L43245: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43246;
    }
  x2 = XEXP (x1, 1);
  goto L43508;

 L43246: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4152;  /* avx512vl_vpermt2varv8sf3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43508;

 L43509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43510;
    }
  goto ret0;

 L43510: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4182;  /* avx512vl_vpermt2varv8sf3_mask */
    }
  goto ret0;

 L50703: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L50704;
    }
  goto ret0;

 L50704: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L50705;
    }
  goto ret0;

 L50705: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50706;
    }
  goto ret0;

 L50706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L50707;
    }
  goto ret0;

 L50707: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L50708;
    }
  goto ret0;

 L50708: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4586;  /* avx512dq_rangepv8sf_mask */
    }
  goto ret0;

 L41618: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L61627;
    case V2SFmode:
      goto L61629;
    case V4SFmode:
      goto L61630;
    default:
      break;
    }
  goto ret0;

 L61627: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41619;
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L42036;
    }
  goto ret0;

 L41619: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L41620;
    }
  goto ret0;

 L41620: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41621;
  goto ret0;

 L41621: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41622;
  goto ret0;

 L41622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L41623;
    }
  goto ret0;

 L41623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41624;
    }
  goto ret0;

 L41624: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3940;  /* avx512vl_vec_dupv8sf_mask */
    }
  goto ret0;

 L42036: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L42037;
    }
  goto ret0;

 L42037: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42038;
    }
  goto ret0;

 L42038: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3996;  /* avx512vl_vec_dup_gprv8sf_mask */
    }
  goto ret0;

 L61629: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L42299;
  goto ret0;

 L42299: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L42300;
    }
  goto ret0;

 L42300: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L42301;
  goto ret0;

 L42301: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42302;
  goto ret0;

 L42302: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L42303;
  goto ret0;

 L42303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L42304;
    }
  goto ret0;

 L42304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42305;
    }
  goto ret0;

 L42305: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16865 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4037;  /* avx512dq_broadcastv8sf_mask */
    }
  goto ret0;

 L61630: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L42329;
    }
  goto ret0;

 L42329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L42330;
    }
  goto ret0;

 L42330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42331;
    }
  goto ret0;

 L42331: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16891 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4041;  /* avx512vl_broadcastv8sf_mask_1 */
    }
  goto ret0;

 L43852: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61632;
  goto ret0;

 L61632: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L43907;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L43853;
    }
  goto ret0;

 L43907: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L43908;
    }
  goto ret0;

 L43908: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L43909;
  goto ret0;

 L43909: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43910;
  goto ret0;

 L43910: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43911;
  goto ret0;

 L43911: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43912;
  goto ret0;

 L43912: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43913;
  goto ret0;

 L43913: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L43914;
    }
  goto ret0;

 L43914: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L43915;
    }
  goto ret0;

 L43915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43916;
    }
  goto ret0;

 L43916: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4222;  /* vec_set_hi_v8sf_mask */
    }
  goto ret0;

 L43853: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L43854;
  goto ret0;

 L43854: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L43855;
    }
  goto ret0;

 L43855: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L43856;
  goto ret0;

 L43856: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L43857;
  goto ret0;

 L43857: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L43858;
  goto ret0;

 L43858: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L43859;
  goto ret0;

 L43859: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L43860;
  goto ret0;

 L43860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L43861;
    }
  goto ret0;

 L43861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43862;
    }
  goto ret0;

 L43862: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4218;  /* vec_set_lo_v8sf_mask */
    }
  goto ret0;

 L38036: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L38037;
    }
  goto ret0;

 L38037: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38038;
    }
  goto ret0;

 L38038: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3575;  /* avx_blendps256 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_92 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 2:
      goto L61633;
    case 1:
      goto L61634;
    case 4:
      goto L61635;
    case 3:
      goto L61637;
    default:
      break;
    }
  goto ret0;

 L61633: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 158LL:
      goto L23820;
    case 82LL:
      goto L25136;
    case 143LL:
      goto L41155;
    case 136LL:
      goto L42587;
    case 42LL:
      goto L44010;
    case 161LL:
      goto L50981;
    default:
      break;
    }
  goto ret0;

 L23820: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L23821;
    }
  goto ret0;

 L23821: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L23822;
    }
  goto ret0;

 L23822: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2336;  /* avx512vl_scalefv8sf */
    }
  goto ret0;

 L25136: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L25137;
    }
  goto ret0;

 L25137: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L61654;
  goto ret0;

 L61654: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L25138;
    }
 L61655: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39002;
    }
  goto ret0;

 L25138: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2466;  /* avx512vl_rndscalev8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 1);
  goto L61655;

 L39002: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14495 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_ROUND) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3683;  /* avx_roundps256 */
    }
  goto ret0;

 L41155: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L41156;
    }
  goto ret0;

 L41156: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L41157;
    }
  goto ret0;

 L41157: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3885;  /* avx2_permvarv8sf */
    }
  goto ret0;

 L42587: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L42588;
    }
  goto ret0;

 L42588: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L42589;
    }
  goto ret0;

 L42589: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4077;  /* avx_vpermilvarv8sf3 */
    }
  goto ret0;

 L44010: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L44011;
    }
  goto ret0;

 L44011: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L44012;
    }
  goto ret0;

 L44012: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4229;  /* avx_maskloadps256 */
    }
  goto ret0;

 L50981: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L50982;
    }
  goto ret0;

 L50982: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L50983;
    }
  goto ret0;

 L50983: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4619;  /* avx512vl_getmantv8sf */
    }
  goto ret0;

 L61634: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 160LL:
      goto L24212;
    case 127LL:
      goto L40821;
    case 141LL:
      goto L44623;
    default:
      break;
    }
  goto ret0;

 L24212: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L24213;
    }
  goto ret0;

 L24213: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2378;  /* avx512vl_getexpv8sf */
    }
  goto ret0;

 L40821: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L40822;
    }
  goto ret0;

 L40822: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3834;  /* xop_frczv8sf2 */
    }
  goto ret0;

 L44623: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L44624;
    }
  goto ret0;

 L44624: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL))
    {
      return 4316;  /* vcvtph2ps256 */
    }
  goto ret0;

 L61635: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 157LL:
      goto L24558;
    case 137LL:
      goto L40949;
    case 145LL:
      goto L45145;
    default:
      break;
    }
  goto ret0;

 L24558: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L24559;
    }
  goto ret0;

 L24559: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L24560;
    }
  goto ret0;

 L24560: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L24561;
    }
  goto ret0;

 L24561: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24562;
    }
  goto ret0;

 L24562: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2418;  /* avx512vl_fixupimmv8sf */
    }
  goto ret0;

 L40949: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L40950;
    }
  goto ret0;

 L40950: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L40951;
    }
  goto ret0;

 L40951: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L40952;
    }
  goto ret0;

 L40952: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_3_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L40953;
    }
  goto ret0;

 L40953: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16326 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3854;  /* xop_vpermil2v8sf3 */
    }
  goto ret0;

 L45145: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L61656;
    case V4SFmode:
      goto L61657;
    default:
      break;
    }
 L45609: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L45610;
  goto ret0;

 L61656: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L45146;
    }
  goto L45609;

 L45146: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[7] = x2;
      goto L45147;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45147: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61658;
    case DImode:
      goto L61659;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L61658: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45148;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45148: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L45149;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45149: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[4] = x4;
      goto L45150;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45150: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45151;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45151: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45152;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45152: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45153;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45153: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SFmode))
    {
      operands[5] = x2;
      goto L45154;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45154: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4343;  /* *avx2_gathersiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L61659: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45177;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L45178;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[4] = x4;
      goto L45179;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45180;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45180: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45181;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45181: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45182;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45182: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SFmode))
    {
      operands[5] = x2;
      goto L45183;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45183: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4344;  /* *avx2_gathersiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L61657: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L46074;
    }
  goto L45609;

 L46074: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[7] = x2;
      goto L46075;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46075: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61660;
    case DImode:
      goto L61661;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L61660: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46076;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46076: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L46077;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46077: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L46078;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46078: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L46079;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46079: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46080;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46080: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46081;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46081: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L46082;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46082: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4375;  /* *avx2_gatherdiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L61661: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L46105;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46105: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L46106;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46106: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L46107;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46107: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L46108;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46108: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46109;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46109: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46110;
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46110: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L46111;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L46111: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4376;  /* *avx2_gatherdiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L45609;

 L45610: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L45611;
    }
  goto ret0;

 L45611: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61662;
    case DImode:
      goto L61663;
    default:
      break;
    }
  goto ret0;

 L61662: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45612;
  goto ret0;

 L45612: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45613;
    }
  goto ret0;

 L45613: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L61664;
    case V4DImode:
      goto L61665;
    default:
      break;
    }
  goto ret0;

 L61664: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L45614;
    }
  goto ret0;

 L45614: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45615;
    }
  goto ret0;

 L45615: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45616;
  goto ret0;

 L45616: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45617;
  goto ret0;

 L45617: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L45618;
    }
  goto ret0;

 L45618: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4359;  /* *avx2_gathersiv8sf_2 */
    }
  goto ret0;

 L61665: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46542;
    }
  goto ret0;

 L46542: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46543;
    }
  goto ret0;

 L46543: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46544;
  goto ret0;

 L46544: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46545;
  goto ret0;

 L46545: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L46546;
    }
  goto ret0;

 L46546: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4391;  /* *avx2_gatherdiv8sf_2 */
    }
  goto ret0;

 L61663: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45641;
  goto ret0;

 L45641: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45642;
    }
  goto ret0;

 L45642: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L61666;
    case V4DImode:
      goto L61667;
    default:
      break;
    }
  goto ret0;

 L61666: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L45643;
    }
  goto ret0;

 L45643: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45644;
    }
  goto ret0;

 L45644: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45645;
  goto ret0;

 L45645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45646;
  goto ret0;

 L45646: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V8SFmode))
    {
      operands[4] = x2;
      goto L45647;
    }
  goto ret0;

 L45647: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4360;  /* *avx2_gathersiv8sf_2 */
    }
  goto ret0;

 L61667: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46571;
    }
  goto ret0;

 L46571: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46572;
    }
  goto ret0;

 L46572: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46573;
  goto ret0;

 L46573: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46574;
  goto ret0;

 L46574: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L46575;
    }
  goto ret0;

 L46575: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4392;  /* *avx2_gatherdiv8sf_2 */
    }
  goto ret0;

 L61637: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 114LL:
      goto L38063;
    case 116LL:
      goto L38091;
    case 147LL:
      goto L42747;
    case 148LL:
      goto L43233;
    case 138LL:
      goto L43641;
    case 145LL:
      goto L47163;
    case 164LL:
      goto L50438;
    case 166LL:
      goto L50606;
    case 190LL:
      goto L50695;
    default:
      break;
    }
  goto ret0;

 L38063: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L38064;
    }
  goto ret0;

 L38064: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L38065;
    }
  goto ret0;

 L38065: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L38066;
    }
  goto ret0;

 L38066: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3579;  /* avx_blendvps256 */
    }
  goto ret0;

 L38091: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L38092;
    }
  goto ret0;

 L38092: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L38093;
    }
  goto ret0;

 L38093: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38094;
    }
  goto ret0;

 L38094: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14056 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3583;  /* avx_dpps256 */
    }
  goto ret0;

 L42747: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L42748;
    }
  goto ret0;

 L42748: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L42749;
    }
  goto ret0;

 L42749: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L42750;
    }
  goto ret0;

 L42750: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4097;  /* avx512vl_vpermi2varv8sf3 */
    }
  goto ret0;

 L43233: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L43234;
    }
  goto ret0;

 L43234: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L43235;
    }
  goto ret0;

 L43235: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L43236;
    }
  goto ret0;

 L43236: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4151;  /* avx512vl_vpermt2varv8sf3 */
    }
  goto ret0;

 L43641: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L43642;
    }
  goto ret0;

 L43642: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L43643;
    }
  goto ret0;

 L43643: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L43644;
    }
  goto ret0;

 L43644: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4196;  /* *avx_vperm2f128v8sf_full */
    }
  goto ret0;

 L47163: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L61668;
    case V4SFmode:
      goto L61669;
    default:
      break;
    }
 L47763: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L47764;
  goto ret0;

 L61668: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L47164;
    }
  goto L47763;

 L47164: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47165;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47165: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L47166;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47166: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61670;
    case DImode:
      goto L61671;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L61670: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47167;
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47167: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47168;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47168: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47169;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47169: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47170;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4411;  /* *avx512f_gathersiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L61671: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47192;
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47192: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47193;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47193: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47194;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47195;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47195: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4412;  /* *avx512f_gathersiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L61669: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L48364;
    }
  goto L47763;

 L48364: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L48365;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48365: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L48366;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61672;
    case DImode:
      goto L61673;
    default:
      break;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L61672: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48367;
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48367: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48368;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48368: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48369;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48369: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48370;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48370: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4459;  /* *avx512f_gatherdiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L61673: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48392;
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L48393;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48394;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48395;
    }
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L48395: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4460;  /* *avx512f_gatherdiv8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 0);
  goto L47763;

 L47764: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47765;
    }
  goto ret0;

 L47765: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[5] = x2;
      goto L47766;
    }
  goto ret0;

 L47766: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L61674;
    case DImode:
      goto L61675;
    default:
      break;
    }
  goto ret0;

 L61674: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47767;
  goto ret0;

 L47767: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47768;
    }
  goto ret0;

 L47768: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L61676;
    case V4DImode:
      goto L61677;
    default:
      break;
    }
  goto ret0;

 L61676: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47769;
    }
  goto ret0;

 L47769: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47770;
    }
  goto ret0;

 L47770: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4435;  /* *avx512f_gathersiv8sf_2 */
    }
  goto ret0;

 L61677: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L48969;
    }
  goto ret0;

 L48969: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48970;
    }
  goto ret0;

 L48970: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4483;  /* *avx512f_gatherdiv8sf_2 */
    }
  goto ret0;

 L61675: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47792;
  goto ret0;

 L47792: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47793;
    }
  goto ret0;

 L47793: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L61678;
    case V4DImode:
      goto L61679;
    default:
      break;
    }
  goto ret0;

 L61678: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47794;
    }
  goto ret0;

 L47794: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47795;
    }
  goto ret0;

 L47795: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4436;  /* *avx512f_gathersiv8sf_2 */
    }
  goto ret0;

 L61679: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L48994;
    }
  goto ret0;

 L48994: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48995;
    }
  goto ret0;

 L48995: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4484;  /* *avx512f_gatherdiv8sf_2 */
    }
  goto ret0;

 L50438: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L50439;
    }
  goto ret0;

 L50439: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L50440;
    }
  goto ret0;

 L50440: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50441;
    }
  goto ret0;

 L50441: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4550;  /* avx512vl_compressv8sf_mask */
    }
  goto ret0;

 L50606: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L50607;
    }
  goto ret0;

 L50607: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L50608;
    }
  goto ret0;

 L50608: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50609;
    }
  goto ret0;

 L50609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4574;  /* avx512vl_expandv8sf_mask */
    }
  goto ret0;

 L50695: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L50696;
    }
  goto ret0;

 L50696: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L50697;
    }
  goto ret0;

 L50697: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50698;
    }
  goto ret0;

 L50698: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4585;  /* avx512dq_rangepv8sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_93 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V8SFmode))
    {
      operands[5] = x1;
      goto L49541;
    }
 L57066: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8SFmode))
    {
      operands[0] = x1;
      goto L23063;
    }
 L57078: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8SFmode))
    {
      operands[0] = x1;
      goto L11605;
    }
 L57096: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V8SFmode))
    {
      operands[0] = x1;
      goto L11857;
    }
 L57122: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8SFmode))
    {
      operands[0] = x1;
      goto L23076;
    }
  goto ret0;

 L49541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L61351;
    case DImode:
      goto L61352;
    default:
      break;
    }
  goto L57066;

 L61351: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49542;
  goto L57066;

 L49542: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49543;
    }
  goto L57066;

 L49543: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L61353;
    case V4DImode:
      goto L61354;
    default:
      break;
    }
  goto L57066;

 L61353: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49544;
    }
  goto L57066;

 L49544: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49545;
    }
  goto L57066;

 L49545: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49546;
  x1 = XEXP (x0, 0);
  goto L57066;

 L49546: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49547;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L49547: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L49548;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L49548: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4507;  /* *avx512f_scattersiv8sf */
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L61354: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50096;
    }
  goto L57066;

 L50096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50097;
    }
  goto L57066;

 L50097: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50098;
  x1 = XEXP (x0, 0);
  goto L57066;

 L50098: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50099;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L50099: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L50100;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L50100: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4531;  /* *avx512f_scatterdiv8sf */
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L61352: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49565;
  goto L57066;

 L49565: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49566;
    }
  goto L57066;

 L49566: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L61355;
    case V4DImode:
      goto L61356;
    default:
      break;
    }
  goto L57066;

 L61355: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49567;
    }
  goto L57066;

 L49567: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49568;
    }
  goto L57066;

 L49568: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49569;
  x1 = XEXP (x0, 0);
  goto L57066;

 L49569: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49570;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L49570: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L49571;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L49571: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4508;  /* *avx512f_scattersiv8sf */
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L61356: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50119;
    }
  goto L57066;

 L50119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50120;
    }
  goto L57066;

 L50120: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50121;
  x1 = XEXP (x0, 0);
  goto L57066;

 L50121: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50122;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L50122: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L50123;
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L50123: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4532;  /* *avx512f_scatterdiv8sf */
    }
  x1 = XEXP (x0, 0);
  goto L57066;

 L23063: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode)
    goto L61357;
 L11536: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V8SFmode))
    {
      operands[1] = x1;
      goto L11537;
    }
  x1 = XEXP (x0, 0);
  goto L57078;

 L61357: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L23064;
    case VEC_MERGE:
      goto L23137;
    case UNSPEC:
      goto L61360;
    default:
     break;
   }
  goto L11536;

 L23064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61361;
  goto L11536;

 L61361: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L23065;
    }
 L61362: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L23125;
    }
  goto L11536;

 L23065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23066;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23066: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23067;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23067: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23068;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23069;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23069: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23070;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23070: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23071;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23071: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23072;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23072: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23073;
  x2 = XEXP (x1, 0);
  goto L61362;

 L23073: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 6871 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 2280;  /* vec_extract_hi_v16sf */
    }
  x2 = XEXP (x1, 0);
  goto L61362;

 L23125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23126;
  goto L11536;

 L23126: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23127;
  goto L11536;

 L23127: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23128;
  goto L11536;

 L23128: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23129;
  goto L11536;

 L23129: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23130;
  goto L11536;

 L23130: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23131;
  goto L11536;

 L23131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23132;
  goto L11536;

 L23132: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23133;
  goto L11536;

 L23133: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 6943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && 1
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2284;  /* vec_extract_lo_v16sf */
    }
  goto L11536;

 L23137: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L23138;
  goto L11536;

 L23138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L23139;
    }
  goto L11536;

 L23139: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23140;
  goto L11536;

 L23140: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23141;
  goto L11536;

 L23141: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23142;
  goto L11536;

 L23142: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23143;
  goto L11536;

 L23143: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23144;
  goto L11536;

 L23144: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23145;
  goto L11536;

 L23145: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23146;
  goto L11536;

 L23146: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23147;
  goto L11536;

 L23147: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23148;
  goto L11536;

 L23148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L23149;
    }
  goto L11536;

 L23149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23150;
    }
  goto L11536;

 L23150: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (64 == 64 || TARGET_AVX512VL)
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))))
    {
      return 2285;  /* vec_extract_lo_v16sf_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11536;

 L61360: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L44099;
  goto L11536;

 L44099: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L44100;
    }
  goto L11536;

 L44100: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4244;  /* avx_ps256_ps */
    }
  x1 = XEXP (x0, 1);
  goto L11536;

 L11537: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V8SFmode)
       || register_operand (operands[1], V8SFmode))) && 
#line 170 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1013;  /* *movv8sf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57078;

 L11605: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode)
    goto L61363;
  x1 = XEXP (x0, 0);
  goto L57096;

 L61363: ATTRIBUTE_UNUSED_LABEL
  tem = recog_90 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57096;

 L11857: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode)
    goto L61520;
  x1 = XEXP (x0, 0);
  goto L57122;

 L61520: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11858;
    case UNSPEC:
      goto L61525;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57122;

 L11858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61530;
  x1 = XEXP (x0, 0);
  goto L57122;

 L61530: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L61532;
    case VEC_SELECT:
      goto L23031;
    case REG:
    case SUBREG:
      goto L61529;
    default:
      x1 = XEXP (x0, 0);
      goto L57122;
   }
 L61529: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L11859;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L61532: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12073;
  x1 = XEXP (x0, 0);
  goto L57122;

 L12073: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L12074;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L12074: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12075;
  x1 = XEXP (x0, 0);
  goto L57122;

 L12075: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12076;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L12076: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1227 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1093;  /* avx512vl_storeups256_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L23031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L23032;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L23032: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23033;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23033: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23034;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23034: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23035;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23035: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23036;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23036: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23037;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23037: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23038;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23038: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23039;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23039: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23040;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23040: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L23041;
  x1 = XEXP (x0, 0);
  goto L57122;

 L23041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L23042;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L23042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23043;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L23043: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6854 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2278;  /* vec_extract_hi_v16sf_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L11859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11860;
  x1 = XEXP (x0, 0);
  goto L57122;

 L11860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11861;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L11861: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1061;  /* avx512vl_storev8sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L61525: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L61533;
    case 3:
      goto L61535;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L61533: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12039;
    case 103LL:
      goto L12444;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L12039: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L12040;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L12040: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1087;  /* avx_storeups256 */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L12444: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L12445;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L12445: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1150;  /* avx_movntv8sf */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L61535: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44058;
    case 165LL:
      goto L50522;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L44058: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L44059;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L44059: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L44060;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L44060: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4237;  /* avx_maskstoreps256 */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L50522: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L50523;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L50523: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50524;
  x1 = XEXP (x0, 0);
  goto L57122;

 L50524: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50525;
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L50525: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4562;  /* avx512vl_compressstorev8sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57122;

 L23076: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode)
    goto L61537;
  goto ret0;

 L61537: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L23077;
    case UNSPEC:
      goto L61563;
    case VEC_SELECT:
      goto L35014;
    case IF_THEN_ELSE:
      goto L40093;
    case VEC_DUPLICATE:
      goto L41610;
    case VEC_CONCAT:
      goto L42199;
    default:
     break;
   }
  goto ret0;

 L23077: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L61584;
  goto ret0;

 L61584: ATTRIBUTE_UNUSED_LABEL
  return recog_91 (x0, insn, pnum_clobbers);

 L61563: ATTRIBUTE_UNUSED_LABEL
  return recog_92 (x0, insn, pnum_clobbers);

 L35014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16SFmode:
      goto L61680;
    case V8SFmode:
      goto L61681;
    default:
      break;
    }
  goto ret0;

 L61680: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L35015;
  goto ret0;

 L35015: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L35016;
    }
  goto ret0;

 L35016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L35017;
    }
  goto ret0;

 L35017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L61682;
  goto ret0;

 L61682: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 8)
    goto L35018;
 L61683: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[3] = x2;
      goto L43668;
    }
  goto ret0;

 L35018: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L35019;
    }
  goto L61683;

 L35019: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L35020;
    }
  goto L61683;

 L35020: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L35021;
    }
  goto L61683;

 L35021: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L35022;
    }
  goto L61683;

 L35022: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L35023;
    }
  goto L61683;

 L35023: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L35024;
    }
  goto L61683;

 L35024: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L35025;
    }
  goto L61683;

 L35025: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L35026;
    }
  goto L61683;

 L35026: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11941 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[5]) - 2)
       && INTVAL (operands[3]) == (INTVAL (operands[6]) - 3)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[9]) - 2)
       && INTVAL (operands[7]) == (INTVAL (operands[10]) - 3))))
    {
      return 3411;  /* *avx512vl_shuf_f32x4_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L61683;

 L43668: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L43669;
    }
  goto ret0;

 L43669: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && avx_vperm2f128_parallel (operands[3], V8SFmode)))
    {
      return 4199;  /* *avx_vperm2f128v8sf_nozero */
    }
  goto ret0;

 L61681: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L42457;
    }
  goto ret0;

 L42457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L61684;
  goto ret0;

 L61684: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1
      && avx_vbroadcast_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L42458;
    }
 L61685: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[2] = x2;
      goto L42489;
    }
  goto ret0;

 L42458: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42459;
    }
  goto L61685;

 L42459: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16989 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4061;  /* *avx_vperm_broadcast_v8sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L61685;

 L42489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42490;
    }
  goto ret0;

 L42490: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1
   && avx_vpermilp_parallel (operands[2], V8SFmode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4065;  /* *avx_vpermilpv8sf */
    }
  goto ret0;

 L40093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L40094;
    }
  goto ret0;

 L40094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L40095;
    }
  goto ret0;

 L40095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L40096;
    }
  goto ret0;

 L40096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3786;  /* xop_pcmov_v8sf256 */
    }
  goto ret0;

 L41610: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L61686;
    case V2SFmode:
      goto L61688;
    case V4SFmode:
      goto L61689;
    default:
      break;
    }
  goto ret0;

 L61686: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41611;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L42030;
    }
  goto ret0;

 L41611: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L41612;
    }
  goto ret0;

 L41612: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41613;
  goto ret0;

 L41613: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3939;  /* avx512vl_vec_dupv8sf */
    }
  goto ret0;

 L42030: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3995;  /* *avx512vl_vec_dup_gprv8sf */
    }
 L42165: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4019;  /* vec_dupv8sf */
    }
  goto ret0;

 L61688: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L42290;
  goto ret0;

 L42290: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L42291;
    }
  goto ret0;

 L42291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L42292;
  goto ret0;

 L42292: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L42293;
  goto ret0;

 L42293: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 16880 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16865 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4036;  /* *avx512dq_broadcastv8sf */
    }
  goto ret0;

 L61689: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L42323;
    }
  goto ret0;

 L42323: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16891 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 4040;  /* *avx512vl_broadcastv8sf_1 */
    }
  goto ret0;

 L42199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61692;
  goto ret0;

 L61692: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L43894;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L42200;
    }
 L61691: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L43841;
    }
 L61693: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L44539;
    }
  goto ret0;

 L43894: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L43895;
    }
  goto ret0;

 L43895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L43896;
  goto ret0;

 L43896: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43897;
  goto ret0;

 L43897: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43898;
  goto ret0;

 L43898: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43899;
  goto ret0;

 L43899: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43900;
  goto ret0;

 L43900: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L43901;
    }
  goto ret0;

 L43901: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4221;  /* vec_set_hi_v8sf */
    }
  goto ret0;

 L42200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16851 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4026;  /* avx_vbroadcastf128_v8sf */
    }
  x2 = XEXP (x1, 0);
  goto L61691;

 L43841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L43842;
  x2 = XEXP (x1, 0);
  goto L61693;

 L43842: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L43843;
    }
  x2 = XEXP (x1, 0);
  goto L61693;

 L43843: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L43844;
  x2 = XEXP (x1, 0);
  goto L61693;

 L43844: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L43845;
  x2 = XEXP (x1, 0);
  goto L61693;

 L43845: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L43846;
  x2 = XEXP (x1, 0);
  goto L61693;

 L43846: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L43847;
  x2 = XEXP (x1, 0);
  goto L61693;

 L43847: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 17568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4217;  /* vec_set_lo_v8sf */
    }
  x2 = XEXP (x1, 0);
  goto L61693;

 L44539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L44540;
    }
  goto ret0;

 L44540: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4304;  /* avx_vec_concatv8sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_94 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L61782;
    case PLUS:
      goto L12692;
    case MINUS:
      goto L12728;
    case MULT:
      goto L13132;
    case DIV:
      goto L13281;
    case SQRT:
      goto L13632;
    case SMAX:
      goto L14002;
    case SMIN:
      goto L14038;
    case AND:
      goto L16161;
    case IOR:
      goto L16305;
    case XOR:
      goto L16320;
    case FMA:
      goto L16697;
    case VEC_DUPLICATE:
      goto L19846;
    case FLOAT:
      goto L20009;
    case UNSIGNED_FLOAT:
      goto L20094;
    case FLOAT_TRUNCATE:
      goto L21824;
    case VEC_CONCAT:
      goto L21839;
    case VEC_SELECT:
      goto L22199;
    case REG:
    case SUBREG:
    case MEM:
      goto L61752;
    default:
      goto L61753;
   }
 L61752: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L11614;
    }
 L61753: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L11740;
    }
  if (sse_comparison_operator (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L15325;
    }
 L61781: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L22651;
    }
  goto ret0;

 L61782: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L61791;
    case 2:
      goto L61796;
    case 3:
      goto L61797;
    default:
      break;
    }
  goto ret0;

 L61791: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L11988;
    case 44LL:
      goto L13483;
    case 155LL:
      goto L13521;
    case 156LL:
      goto L13775;
    case 45LL:
      goto L13836;
    default:
      break;
    }
  goto ret0;

 L11988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L11989;
    }
  goto ret0;

 L11989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L11990;
    }
  goto ret0;

 L11990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11991;
    }
  goto ret0;

 L11991: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL))))
    {
      return 1079;  /* *sse_loadups_mask */
    }
  goto ret0;

 L13483: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13484;
    }
  goto ret0;

 L13484: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13485;
    }
  goto ret0;

 L13485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1740 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1270;  /* sse_vmrcpv4sf2 */
    }
  goto ret0;

 L13521: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13569;
    }
  goto ret0;

 L13569: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13570;
    }
 L13522: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13523;
    }
  goto ret0;

 L13570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1283;  /* srcp14v4sf */
    }
  x2 = XEXP (x1, 1);
  goto L13522;

 L13523: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13524;
    }
  goto ret0;

 L13524: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1276;  /* rcp14v4sf_mask */
    }
  goto ret0;

 L13775: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13823;
    }
  goto ret0;

 L13823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13824;
    }
 L13776: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13777;
    }
  goto ret0;

 L13824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1866 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1319;  /* rsqrt14v4sf */
    }
  x2 = XEXP (x1, 1);
  goto L13776;

 L13777: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13778;
    }
  goto ret0;

 L13778: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1312;  /* rsqrt14v4sf_mask */
    }
  goto ret0;

 L13836: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13837;
    }
  goto ret0;

 L13837: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13838;
    }
  goto ret0;

 L13838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1879 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1321;  /* sse_vmrsqrtv4sf2 */
    }
  goto ret0;

 L61796: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 188)
    goto L15159;
  goto ret0;

 L15159: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L15160;
    }
  goto ret0;

 L15160: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L15161;
    }
  goto ret0;

 L15161: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L15162;
    }
  goto ret0;

 L15162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15163;
    }
  goto ret0;

 L15163: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1441;  /* reducepv4sf_mask */
    }
  goto ret0;

 L61797: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 188LL:
      goto L15213;
    case 135LL:
      goto L15259;
    case 123LL:
      goto L18695;
    default:
      break;
    }
  goto ret0;

 L15213: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L15214;
    }
  goto ret0;

 L15214: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L15215;
    }
  goto ret0;

 L15215: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15216;
    }
  goto ret0;

 L15216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L15217;
  goto ret0;

 L15217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 1448;  /* reducesv4sf */
    }
  goto ret0;

 L15259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L15260;
    }
  goto ret0;

 L15260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L15261;
    }
  goto ret0;

 L15261: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15262;
    }
  goto ret0;

 L15262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L15263;
  goto ret0;

 L15263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2438 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1454;  /* avx_vmcmpv4sf3 */
    }
  goto ret0;

 L18695: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61800;
  goto ret0;

 L61800: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L18696;
    }
 L61801: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L18833;
    }
  goto ret0;

 L18696: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L18697;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L18697: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61803;
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L61803: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19176;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L18698;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L19176: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19177;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L19177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L19178;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L19178: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L19179;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L19179: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1860;  /* fma_fmsubadd_v4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L18698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L18699;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L18699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18700;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L18700: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1814;  /* fma_fmaddsub_v4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L61801;

 L18833: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L18834;
    }
  goto ret0;

 L18834: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61806;
  goto ret0;

 L61806: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19327;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L18835;
    }
 L61805: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L18973;
    }
  goto ret0;

 L19327: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L61807;
  goto ret0;

 L61807: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19328;
    }
 L61808: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19478;
    }
  goto ret0;

 L19328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19329;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61808;

 L19329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19330;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61808;

 L19330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1874;  /* avx512vl_fmsubadd_v4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L61808;

 L19478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19479;
  goto ret0;

 L19479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19480;
    }
  goto ret0;

 L19480: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1886;  /* avx512vl_fmsubadd_v4sf_mask3 */
    }
  goto ret0;

 L18835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18836;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61805;

 L18836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18837;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61805;

 L18837: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1828;  /* avx512vl_fmaddsub_v4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L61805;

 L18973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18974;
  goto ret0;

 L18974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18975;
    }
  goto ret0;

 L18975: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1840;  /* avx512vl_fmaddsub_v4sf_mask3 */
    }
  goto ret0;

 L12692: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61809;
  goto ret0;

 L61809: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12693;
    }
 L61810: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12966;
    }
  goto ret0;

 L12693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L12694;
    }
  x3 = XEXP (x2, 0);
  goto L61810;

 L12694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L12695;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61810;

 L12695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12696;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61810;

 L12696: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands) && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1182;  /* *addv4sf3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61810;

 L12966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L14723;
    }
  goto ret0;

 L14723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == MINUS)
    goto L14724;
 L12967: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L12968;
  goto ret0;

 L14724: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L14725;
  goto L12967;

 L14725: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L14726;
  goto L12967;

 L14726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (10)]
      && 
#line 2046 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1425;  /* sse3_addsubv4sf3 */
    }
  x2 = XEXP (x1, 1);
  goto L12967;

 L12968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1212;  /* sse_vmaddv4sf3 */
    }
  goto ret0;

 L12728: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61811;
  goto ret0;

 L61811: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12729;
    }
 L61812: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12986;
    }
  goto ret0;

 L12729: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L12730;
    }
  x3 = XEXP (x2, 0);
  goto L61812;

 L12730: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L12731;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61812;

 L12731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12732;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61812;

 L12732: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands) && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1186;  /* *subv4sf3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61812;

 L12986: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L12987;
    }
  goto ret0;

 L12987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L12988;
  goto ret0;

 L12988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1214;  /* sse_vmsubv4sf3 */
    }
  goto ret0;

 L13132: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61813;
  goto ret0;

 L61813: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13133;
    }
 L61814: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13262;
    }
  goto ret0;

 L13133: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L13134;
    }
  x3 = XEXP (x2, 0);
  goto L61814;

 L13134: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L13135;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61814;

 L13135: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13136;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61814;

 L13136: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands) && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1230;  /* *mulv4sf3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61814;

 L13262: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L13263;
    }
  goto ret0;

 L13263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L13264;
  goto ret0;

 L13264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1244;  /* sse_vmmulv4sf3 */
    }
  goto ret0;

 L13281: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13282;
    }
  goto ret0;

 L13282: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L13283;
    }
  goto ret0;

 L13283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L13284;
 L13400: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L13401;
    }
  goto ret0;

 L13284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1246;  /* sse_vmdivv4sf3 */
    }
  x2 = XEXP (x1, 1);
  goto L13400;

 L13401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13402;
    }
  goto ret0;

 L13402: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1259;  /* sse_divv4sf3_mask */
    }
  goto ret0;

 L13632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13699;
    }
  goto ret0;

 L13699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13700;
    }
 L13633: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13634;
    }
  goto ret0;

 L13700: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1301;  /* sse_vmsqrtv4sf2 */
    }
  x2 = XEXP (x1, 1);
  goto L13633;

 L13634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13635;
    }
  goto ret0;

 L13635: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1292;  /* sse_sqrtv4sf2_mask */
    }
  goto ret0;

 L14002: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61815;
  goto ret0;

 L61815: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L14003;
    }
 L61816: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L14384;
    }
  goto ret0;

 L14003: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L14004;
    }
  x3 = XEXP (x2, 0);
  goto L61816;

 L14004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L14005;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61816;

 L14005: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14006;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61816;

 L14006: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4SFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1340;  /* *smaxv4sf3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61816;

 L14384: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L14541;
    }
  goto ret0;

 L14541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L14542;
 L14385: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L14386;
    }
  goto ret0;

 L14542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1402;  /* sse_vmsmaxv4sf3 */
    }
  x2 = XEXP (x1, 1);
  goto L14385;

 L14386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14387;
    }
  goto ret0;

 L14387: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1383;  /* *smaxv4sf3_mask */
    }
  goto ret0;

 L14038: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61817;
  goto ret0;

 L61817: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L14039;
    }
 L61818: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L14399;
    }
  goto ret0;

 L14039: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L14040;
    }
  x3 = XEXP (x2, 0);
  goto L61818;

 L14040: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L14041;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61818;

 L14041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14042;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61818;

 L14042: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4SFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1344;  /* *sminv4sf3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61818;

 L14399: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L14561;
    }
  goto ret0;

 L14561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L14562;
 L14400: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L14401;
    }
  goto ret0;

 L14562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1404;  /* sse_vmsminv4sf3 */
    }
  x2 = XEXP (x1, 1);
  goto L14400;

 L14401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14402;
    }
  goto ret0;

 L14402: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1385;  /* *sminv4sf3_mask */
    }
  goto ret0;

 L16161: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61819;
  goto ret0;

 L61819: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L16162;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16291;
    }
  goto ret0;

 L16162: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L16163;
    }
  goto ret0;

 L16163: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L16164;
    }
  goto ret0;

 L16164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L16165;
    }
  goto ret0;

 L16165: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16166;
    }
  goto ret0;

 L16166: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL)))
    {
      return 1559;  /* sse_andnotv4sf3_mask */
    }
  goto ret0;

 L16291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L16292;
    }
  goto ret0;

 L16292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L16293;
    }
  goto ret0;

 L16293: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16294;
    }
  goto ret0;

 L16294: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (AND, V4SFmode, operands))))
    {
      return 1575;  /* *andv4sf3_mask */
    }
  goto ret0;

 L16305: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16306;
    }
  goto ret0;

 L16306: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L16307;
    }
  goto ret0;

 L16307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L16308;
    }
  goto ret0;

 L16308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16309;
    }
  goto ret0;

 L16309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (IOR, V4SFmode, operands))))
    {
      return 1577;  /* *iorv4sf3_mask */
    }
  goto ret0;

 L16320: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16321;
    }
  goto ret0;

 L16321: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L16322;
    }
  goto ret0;

 L16322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L16323;
    }
  goto ret0;

 L16323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16324;
    }
  goto ret0;

 L16324: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (XOR, V4SFmode, operands))))
    {
      return 1579;  /* *xorv4sf3_mask */
    }
  goto ret0;

 L16697: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61823;
  goto ret0;

 L61823: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17612;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16698;
    }
 L61822: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16822;
    }
  goto ret0;

 L17612: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L61824;
  goto ret0;

 L61824: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L17613;
    }
 L61825: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L17750;
    }
 L61826: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L19668;
    }
 L61827: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L19806;
    }
  goto ret0;

 L17613: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L17614;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17614: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61829;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L61829: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17967;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L17615;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17967: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L17968;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L17969;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17970;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17970: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1750;  /* *fma_fnmsub_v4sf */
    }
 L18228: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1772;  /* fma_fnmsub_v4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L17616;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17617;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17617: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1718;  /* fma_fnmadd_v4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61825;

 L17750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L17751;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L17751: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61832;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L61832: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18375;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L17752;
    }
 L61831: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L17846;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L18375: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L61833;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L61833: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L18376;
    }
 L61834: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L18493;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L18376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18377;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61834;

 L18377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18378;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61834;

 L18378: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1785;  /* avx512vl_fnmsub_v4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61834;

 L18493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18494;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L18494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18495;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L18495: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1794;  /* avx512vl_fnmsub_v4sf_mask3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L17752: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17753;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61831;

 L17753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17754;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61831;

 L17754: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1731;  /* avx512vl_fnmadd_v4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61831;

 L17846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17847;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L17847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17848;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L17848: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1739;  /* avx512vl_fnmadd_v4sf_mask3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61826;

 L19668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19669;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19669: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61836;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L61836: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19718;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L19670;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19718: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19719;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19719: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19720;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19720: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3715 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F))
    {
      return 1906;  /* *fmai_fnmsub_v4sf */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19671;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3697 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F))
    {
      return 1902;  /* *fmai_fnmadd_v4sf */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61827;

 L19806: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L19807;
    }
  goto ret0;

 L19807: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61838;
  goto ret0;

 L61838: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19828;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L19808;
    }
  goto ret0;

 L19828: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19829;
    }
  goto ret0;

 L19829: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L19830;
    }
  goto ret0;

 L19830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3792 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4))
    {
      return 1916;  /* *fma4i_vmfnmsub_v4sf */
    }
  goto ret0;

 L19808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L19809;
    }
  goto ret0;

 L19809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3776 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4))
    {
      return 1914;  /* *fma4i_vmfnmadd_v4sf */
    }
  goto ret0;

 L16698: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L16699;
    }
  x3 = XEXP (x2, 0);
  goto L61822;

 L16699: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61840;
  x3 = XEXP (x2, 0);
  goto L61822;

 L61840: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17142;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L19577;
    }
  x3 = XEXP (x2, 0);
  goto L61822;

 L17142: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19622;
    }
  x3 = XEXP (x2, 0);
  goto L61822;

 L19622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19623;
 L17143: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L17144;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61822;

 L19623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3680 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F))
    {
      return 1898;  /* *fmai_fmsub_v4sf */
    }
  x2 = XEXP (x1, 1);
  goto L17143;

 L17144: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17145;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4))
    {
      return 1912;  /* *fma4i_vmfmsub_v4sf */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61822;

 L17145: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1674;  /* fma_fmsub_v4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61822;

 L19577: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19578;
 L16700: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L16701;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61822;

 L19578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3663 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F))
    {
      return 1894;  /* *fmai_fmadd_v4sf */
    }
  x2 = XEXP (x1, 1);
  goto L16700;

 L16701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L16702;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4))
    {
      return 1910;  /* *fma4i_vmfmadd_v4sf */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61822;

 L16702: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1630;  /* fma_fmadd_v4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61822;

 L16822: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L16823;
    }
  goto ret0;

 L16823: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode)
    goto L61843;
  goto ret0;

 L61843: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17293;
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L16824;
    }
 L61842: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L16923;
    }
  goto ret0;

 L17293: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L61844;
  goto ret0;

 L61844: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L17294;
    }
 L61845: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L17430;
    }
  goto ret0;

 L17294: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17295;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61845;

 L17295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17296;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61845;

 L17296: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1688;  /* avx512vl_fmsub_v4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L61845;

 L17430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17431;
  goto ret0;

 L17431: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17432;
    }
  goto ret0;

 L17432: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1699;  /* avx512vl_fmsub_v4sf_mask3 */
    }
  goto ret0;

 L16824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L16825;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61842;

 L16825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16826;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61842;

 L16826: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1643;  /* avx512vl_fmadd_v4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L61842;

 L16923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L16924;
  goto ret0;

 L16924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16925;
    }
  goto ret0;

 L16925: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1652;  /* avx512vl_fmadd_v4sf_mask3 */
    }
  goto ret0;

 L19846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2SFmode:
      goto L61846;
    case SFmode:
      goto L61847;
    default:
      break;
    }
  goto ret0;

 L61846: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case FLOAT:
      goto L19847;
    case FLOAT_TRUNCATE:
      goto L21742;
    default:
     break;
   }
  goto ret0;

 L19847: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SImode))
    {
      operands[2] = x4;
      goto L19848;
    }
  goto ret0;

 L19848: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L19849;
    }
  goto ret0;

 L19849: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 3810 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1918;  /* sse_cvtpi2ps */
    }
  goto ret0;

 L21742: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L21743;
    }
  goto ret0;

 L21743: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L21744;
    }
  goto ret0;

 L21744: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4838 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2157;  /* sse2_cvtsd2ss */
    }
  goto ret0;

 L61847: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case FLOAT:
      goto L19871;
    case UNSIGNED_FLOAT:
      goto L19932;
    case REG:
    case SUBREG:
    case MEM:
      goto L61850;
    default:
      goto ret0;
   }
 L61850: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L22725;
    }
  goto ret0;

 L19871: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L19872;
    }
  goto ret0;

 L19872: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L19873;
    }
  goto ret0;

 L19873: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3846 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1921;  /* sse_cvtsi2ss */
    }
  goto ret0;

 L19932: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L19933;
    }
  goto ret0;

 L19933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L19934;
    }
  goto ret0;

 L19934: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 3983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1928;  /* cvtusi2ss32 */
    }
  goto ret0;

 L22725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22726;
    }
  goto ret0;

 L22726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L22727;
    }
  goto ret0;

 L22727: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6440 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1
   && ((unsigned) exact_log2 (INTVAL (operands[3]))
       < GET_MODE_NUNITS (V4SFmode))))
    {
      return 2249;  /* *vec_setv4sf_sse4_1 */
    }
  goto ret0;

 L20009: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L61851;
    case V4DImode:
      goto L61852;
    default:
      break;
    }
  goto ret0;

 L61851: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L20010;
    }
  goto ret0;

 L20010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L20011;
    }
  goto ret0;

 L20011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20012;
    }
  goto ret0;

 L20012: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 1938;  /* floatv4siv4sf2_mask */
    }
  goto ret0;

 L61852: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L20911;
    }
  goto ret0;

 L20911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L20912;
    }
  goto ret0;

 L20912: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20913;
    }
  goto ret0;

 L20913: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2053;  /* floatv4div4sf2_mask */
    }
  goto ret0;

 L20094: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L61853;
    case V4DImode:
      goto L61854;
    default:
      break;
    }
  goto ret0;

 L61853: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L20095;
    }
  goto ret0;

 L20095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L20096;
    }
  goto ret0;

 L20096: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20097;
    }
  goto ret0;

 L20097: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1949;  /* ufloatv4siv4sf2_mask */
    }
  goto ret0;

 L61854: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L20924;
    }
  goto ret0;

 L20924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L20925;
    }
  goto ret0;

 L20925: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20926;
    }
  goto ret0;

 L20926: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2055;  /* ufloatv4div4sf2_mask */
    }
  goto ret0;

 L21824: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21825;
    }
  goto ret0;

 L21825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L21826;
    }
  goto ret0;

 L21826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21827;
    }
  goto ret0;

 L21827: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2166;  /* avx_cvtpd2ps256_mask */
    }
  goto ret0;

 L21839: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == FLOAT_TRUNCATE)
    goto L21840;
  goto ret0;

 L21840: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L21841;
    }
  goto ret0;

 L21841: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V2SFmode))
    {
      operands[2] = x3;
      goto L21842;
    }
  goto ret0;

 L21842: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L21843;
    }
  goto ret0;

 L21843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L21844;
    }
  goto ret0;

 L21844: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4923 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2168;  /* *sse2_cvtpd2ps_mask */
    }
  goto ret0;

 L22199: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode
      && GET_CODE (x3) == VEC_CONCAT)
    goto L22200;
  goto ret0;

 L22200: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L61855;
  goto ret0;

 L61855: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L22201;
    }
 L61856: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L22371;
    }
 L61857: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L22581;
    }
  goto ret0;

 L22201: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L22202;
    }
  x4 = XEXP (x3, 0);
  goto L61856;

 L22202: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22203;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22203: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61858;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L61858: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 2LL:
        goto L22204;
      case 0LL:
        goto L22303;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22204: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22205;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22205: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22206;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22206: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22207;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L22208;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L22209;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22209: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL)))
    {
      return 2210;  /* vec_interleave_highv4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22303: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22304;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22304: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22305;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22305: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22306;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22306: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L22307;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L22308;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22308: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5854 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2215;  /* unpcklps128_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61856;

 L22371: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[1]))
    goto L22372;
  x4 = XEXP (x3, 0);
  goto L61857;

 L22372: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22373;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22373: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L61860;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L61860: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L22374;
      case 0LL:
        goto L22484;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22374: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22375;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22375: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22376;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22376: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22377;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L22378;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22378: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22379;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22379: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5939 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3 && TARGET_AVX512VL)))
    {
      return 2220;  /* sse3_movshdup_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22484: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22485;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22485: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22486;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22486: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22487;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L22488;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22489;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5992 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3 && TARGET_AVX512VL)))
    {
      return 2226;  /* sse3_movsldup_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L61857;

 L22581: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L22582;
    }
  goto ret0;

 L22582: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22583;
  goto ret0;

 L22583: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22584;
    }
  goto ret0;

 L22584: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L22585;
    }
  goto ret0;

 L22585: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L22586;
    }
  goto ret0;

 L22586: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L22587;
    }
  goto ret0;

 L22587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[7] = x2;
      goto L22588;
    }
  goto ret0;

 L22588: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[8] = x2;
      goto L22589;
    }
  goto ret0;

 L22589: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6110 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2231;  /* sse_shufps_v4sf_mask */
    }
  goto ret0;

 L11614: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L11615;
    }
  x2 = XEXP (x1, 0);
  goto L61753;

 L11615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11616;
    }
  x2 = XEXP (x1, 0);
  goto L61753;

 L11616: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1026;  /* avx512vl_loadv4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61753;

 L11740: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L11741;
    }
  x2 = XEXP (x1, 0);
  goto L61781;

 L11741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11742;
    }
  x2 = XEXP (x1, 0);
  goto L61781;

 L11742: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1044;  /* avx512vl_blendmv4sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61781;

 L15325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L15326;
    }
  goto ret0;

 L15326: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L15327;
    }
  goto ret0;

 L15327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L15328;
  goto ret0;

 L15328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2484 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1464;  /* sse_vmmaskcmpv4sf3 */
    }
  goto ret0;

 L22651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22652;
    }
  goto ret0;

 L22652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2238;  /* sse_movss */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_95 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_CONCAT:
      goto L15041;
    case FLOAT:
      goto L20931;
    case UNSIGNED_FLOAT:
      goto L20939;
    case VEC_MERGE:
      goto L20947;
    case FLOAT_TRUNCATE:
      goto L21832;
    case REG:
    case SUBREG:
      goto L61884;
    default:
      goto ret0;
   }
 L61884: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L22704;
    }
  goto ret0;

 L15041: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode)
    goto L61885;
  goto ret0;

 L61885: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L15042;
    case MINUS:
      goto L15083;
    default:
     break;
   }
  goto ret0;

 L15042: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15043;
  goto ret0;

 L15043: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[1] = x5;
      goto L15044;
    }
  goto ret0;

 L15044: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15045;
  goto ret0;

 L15045: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L15046;
  goto ret0;

 L15046: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15047;
  goto ret0;

 L15047: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L15048;
  goto ret0;

 L15048: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15049;
  goto ret0;

 L15049: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15050;
  goto ret0;

 L15050: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == PLUS)
    goto L15051;
  goto ret0;

 L15051: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15052;
  goto ret0;

 L15052: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L15053;
  goto ret0;

 L15053: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15054;
  goto ret0;

 L15054: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L15055;
  goto ret0;

 L15055: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15056;
  goto ret0;

 L15056: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L15057;
  goto ret0;

 L15057: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15058;
  goto ret0;

 L15058: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L15059;
  goto ret0;

 L15059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L15060;
  goto ret0;

 L15060: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == PLUS)
    goto L15061;
  goto ret0;

 L15061: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15062;
  goto ret0;

 L15062: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SFmode))
    {
      operands[2] = x5;
      goto L15063;
    }
  goto ret0;

 L15063: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15064;
  goto ret0;

 L15064: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L15065;
  goto ret0;

 L15065: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15066;
  goto ret0;

 L15066: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L15067;
  goto ret0;

 L15067: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15068;
  goto ret0;

 L15068: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15069;
  goto ret0;

 L15069: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == PLUS)
    goto L15070;
  goto ret0;

 L15070: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15071;
  goto ret0;

 L15071: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L15072;
  goto ret0;

 L15072: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15073;
  goto ret0;

 L15073: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L15074;
  goto ret0;

 L15074: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15075;
  goto ret0;

 L15075: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L15076;
  goto ret0;

 L15076: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15077;
  goto ret0;

 L15077: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 2249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1434;  /* sse3_haddv4sf3 */
    }
  goto ret0;

 L15083: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15084;
  goto ret0;

 L15084: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[1] = x5;
      goto L15085;
    }
  goto ret0;

 L15085: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15086;
  goto ret0;

 L15086: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L15087;
  goto ret0;

 L15087: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15088;
  goto ret0;

 L15088: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L15089;
  goto ret0;

 L15089: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15090;
  goto ret0;

 L15090: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15091;
  goto ret0;

 L15091: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == MINUS)
    goto L15092;
  goto ret0;

 L15092: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15093;
  goto ret0;

 L15093: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L15094;
  goto ret0;

 L15094: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15095;
  goto ret0;

 L15095: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L15096;
  goto ret0;

 L15096: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15097;
  goto ret0;

 L15097: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L15098;
  goto ret0;

 L15098: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15099;
  goto ret0;

 L15099: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L15100;
  goto ret0;

 L15100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L15101;
  goto ret0;

 L15101: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == MINUS)
    goto L15102;
  goto ret0;

 L15102: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15103;
  goto ret0;

 L15103: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SFmode))
    {
      operands[2] = x5;
      goto L15104;
    }
  goto ret0;

 L15104: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15105;
  goto ret0;

 L15105: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L15106;
  goto ret0;

 L15106: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15107;
  goto ret0;

 L15107: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L15108;
  goto ret0;

 L15108: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15109;
  goto ret0;

 L15109: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15110;
  goto ret0;

 L15110: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == MINUS)
    goto L15111;
  goto ret0;

 L15111: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15112;
  goto ret0;

 L15112: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L15113;
  goto ret0;

 L15113: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15114;
  goto ret0;

 L15114: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L15115;
  goto ret0;

 L15115: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L15116;
  goto ret0;

 L15116: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L15117;
  goto ret0;

 L15117: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L15118;
  goto ret0;

 L15118: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 2249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1435;  /* sse3_hsubv4sf3 */
    }
  goto ret0;

 L20931: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L20932;
    }
  goto ret0;

 L20932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L20933;
  goto ret0;

 L20933: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20934;
  goto ret0;

 L20934: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4522 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 2056;  /* *floatv2div2sf2 */
    }
  goto ret0;

 L20939: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L20940;
    }
  goto ret0;

 L20940: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L20941;
  goto ret0;

 L20941: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20942;
  goto ret0;

 L20942: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4522 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 2057;  /* *ufloatv2div2sf2 */
    }
  goto ret0;

 L20947: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SFmode)
    goto L61887;
  goto ret0;

 L61887: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case FLOAT:
      goto L20948;
    case UNSIGNED_FLOAT:
      goto L20963;
    default:
     break;
   }
  goto ret0;

 L20948: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L20949;
    }
  goto ret0;

 L20949: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L20950;
  goto ret0;

 L20950: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L20951;
    }
  goto ret0;

 L20951: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L20952;
  goto ret0;

 L20952: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20953;
  goto ret0;

 L20953: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L20954;
  goto ret0;

 L20954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20955;
    }
  goto ret0;

 L20955: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L20956;
  goto ret0;

 L20956: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20957;
  goto ret0;

 L20957: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4538 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 2058;  /* floatv2div2sf2_mask */
    }
  goto ret0;

 L20963: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L20964;
    }
  goto ret0;

 L20964: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L20965;
  goto ret0;

 L20965: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (vector_move_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L20966;
    }
  goto ret0;

 L20966: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L20967;
  goto ret0;

 L20967: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20968;
  goto ret0;

 L20968: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L20969;
  goto ret0;

 L20969: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20970;
    }
  goto ret0;

 L20970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == CONST_VECTOR
      && XVECLEN (x2, 0) == 2)
    goto L20971;
  goto ret0;

 L20971: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20972;
  goto ret0;

 L20972: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 4538 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && TARGET_AVX512VL))
    {
      return 2059;  /* ufloatv2div2sf2_mask */
    }
  goto ret0;

 L21832: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21833;
    }
  goto ret0;

 L21833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L21834;
    }
  goto ret0;

 L21834: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4923 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2167;  /* *sse2_cvtpd2ps */
    }
  goto ret0;

 L22704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L22705;
    }
  goto ret0;

 L22705: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6370 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2246;  /* *vec_concatv4sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_96 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11613;
    case UNSPEC:
      goto L61741;
    case PLUS:
      goto L12676;
    case MINUS:
      goto L12712;
    case MULT:
      goto L13116;
    case DIV:
      goto L13391;
    case SQRT:
      goto L13626;
    case SMAX:
      goto L13986;
    case SMIN:
      goto L14022;
    case VEC_CONCAT:
      goto L15040;
    case AND:
      goto L16153;
    case IOR:
      goto L16298;
    case XOR:
      goto L16313;
    case FMA:
      goto L16597;
    case FLOAT:
      goto L20003;
    case UNSIGNED_FLOAT:
      goto L20080;
    case FLOAT_TRUNCATE:
      goto L21818;
    case VEC_SELECT:
      goto L22187;
    case VEC_DUPLICATE:
      goto L22663;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L61729;
    default:
      goto ret0;
   }
 L61729: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, V4SFmode))
    {
      operands[3] = x1;
      goto L15282;
    }
  goto ret0;

 L11613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61754;
  goto ret0;

 L61754: ATTRIBUTE_UNUSED_LABEL
  return recog_94 (x0, insn, pnum_clobbers);

 L61741: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L61862;
    case 2:
      goto L61867;
    case 3:
      goto L61870;
    default:
      break;
    }
  goto ret0;

 L61862: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L11982;
    case 44LL:
      goto L13477;
    case 155LL:
      goto L13515;
    case 45LL:
      goto L13738;
    case 156LL:
      goto L13769;
    default:
      break;
    }
  goto ret0;

 L11982: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L11983;
    }
  goto ret0;

 L11983: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1))
    {
      return 1078;  /* *sse_loadups */
    }
  goto ret0;

 L13477: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13478;
    }
  goto ret0;

 L13478: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1725 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1269;  /* sse_rcpv4sf2 */
    }
  goto ret0;

 L13515: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13516;
    }
  goto ret0;

 L13516: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1275;  /* *rcp14v4sf */
    }
  goto ret0;

 L13738: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13739;
    }
  goto ret0;

 L13739: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1841 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1306;  /* sse_rsqrtv4sf2 */
    }
  goto ret0;

 L13769: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13770;
    }
  goto ret0;

 L13770: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1311;  /* *rsqrt14v4sf */
    }
  goto ret0;

 L61867: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 48LL:
      goto L14630;
    case 49LL:
      goto L14666;
    case 188LL:
      goto L15152;
    default:
      break;
    }
  goto ret0;

 L14630: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L14631;
    }
  goto ret0;

 L14631: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L14632;
    }
  goto ret0;

 L14632: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1412;  /* *ieee_sminv4sf3 */
    }
  goto ret0;

 L14666: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L14667;
    }
  goto ret0;

 L14667: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L14668;
    }
  goto ret0;

 L14668: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1418;  /* *ieee_smaxv4sf3 */
    }
  goto ret0;

 L15152: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L15153;
    }
  goto ret0;

 L15153: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L15154;
    }
  goto ret0;

 L15154: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1440;  /* *reducepv4sf */
    }
  goto ret0;

 L61870: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15237;
    case 123LL:
      goto L18602;
    case 115LL:
      goto L22731;
    default:
      break;
    }
  goto ret0;

 L15237: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L15238;
    }
  goto ret0;

 L15238: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L15239;
    }
  goto ret0;

 L15239: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15240;
    }
  goto ret0;

 L15240: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1451;  /* avx_cmpv4sf3 */
    }
  goto ret0;

 L18602: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L18603;
    }
  goto ret0;

 L18603: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L18604;
    }
  goto ret0;

 L18604: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V4SFmode)
    goto L61874;
  goto ret0;

 L61874: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19072;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L18605;
    }
  goto ret0;

 L19072: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L19073;
    }
  goto ret0;

 L19073: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3577 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1849;  /* *fma_fmsubadd_v4sf */
    }
 L19168: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1859;  /* *fma_fmsubadd_v4sf */
    }
  goto ret0;

 L18605: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3509 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1803;  /* *fma_fmaddsub_v4sf */
    }
 L18690: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1813;  /* *fma_fmaddsub_v4sf */
    }
  goto ret0;

 L22731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L22732;
    }
  goto ret0;

 L22732: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22733;
    }
  goto ret0;

 L22733: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L22734;
    }
  goto ret0;

 L22734: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6470 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 2250;  /* sse4_1_insertps */
    }
  goto ret0;

 L12676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L12677;
    }
  goto ret0;

 L12677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L12678;
    }
  goto ret0;

 L12678: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands) && 1 && 1))
    {
      return 1180;  /* *addv4sf3 */
    }
  goto ret0;

 L12712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L12713;
    }
  goto ret0;

 L12713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L12714;
    }
  goto ret0;

 L12714: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands) && 1 && 1))
    {
      return 1184;  /* *subv4sf3 */
    }
  goto ret0;

 L13116: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13117;
    }
  goto ret0;

 L13117: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13118;
    }
  goto ret0;

 L13118: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands) && 1 && 1))
    {
      return 1228;  /* *mulv4sf3 */
    }
  goto ret0;

 L13391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13392;
    }
  goto ret0;

 L13392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13393;
    }
  goto ret0;

 L13393: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1))
    {
      return 1258;  /* sse_divv4sf3 */
    }
  goto ret0;

 L13626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13627;
    }
  goto ret0;

 L13627: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1))
    {
      return 1291;  /* sse_sqrtv4sf2 */
    }
  goto ret0;

 L13986: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61875;
  goto ret0;

 L61875: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L13987;
    }
 L61876: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L14377;
    }
  goto ret0;

 L13987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L13988;
    }
  x2 = XEXP (x1, 0);
  goto L61876;

 L13988: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4SFmode, operands)
   && 1 && 1))
    {
      return 1338;  /* *smaxv4sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61876;

 L14377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L14378;
    }
  goto ret0;

 L14378: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1))
    {
      return 1382;  /* *smaxv4sf3 */
    }
  goto ret0;

 L14022: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61877;
  goto ret0;

 L61877: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L14023;
    }
 L61878: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L14392;
    }
  goto ret0;

 L14023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L14024;
    }
  x2 = XEXP (x1, 0);
  goto L61878;

 L14024: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4SFmode, operands)
   && 1 && 1))
    {
      return 1342;  /* *sminv4sf3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L61878;

 L14392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L14393;
    }
  goto ret0;

 L14393: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1))
    {
      return 1384;  /* *sminv4sf3 */
    }
  goto ret0;

 L15040: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SFmode)
    goto L61879;
  goto ret0;

 L61879: ATTRIBUTE_UNUSED_LABEL
  return recog_95 (x0, insn, pnum_clobbers);

 L16153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61889;
  goto ret0;

 L61889: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16154;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L16284;
    }
  goto ret0;

 L16154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16155;
    }
  goto ret0;

 L16155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L16156;
    }
  goto ret0;

 L16156: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1))
    {
      return 1558;  /* sse_andnotv4sf3 */
    }
  goto ret0;

 L16284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L16285;
    }
  goto ret0;

 L16285: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V4SFmode, operands)))
    {
      return 1574;  /* *andv4sf3 */
    }
  goto ret0;

 L16298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L16299;
    }
  goto ret0;

 L16299: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L16300;
    }
  goto ret0;

 L16300: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V4SFmode, operands)))
    {
      return 1576;  /* *iorv4sf3 */
    }
  goto ret0;

 L16313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L16314;
    }
  goto ret0;

 L16314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L16315;
    }
  goto ret0;

 L16315: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V4SFmode, operands)))
    {
      return 1578;  /* *xorv4sf3 */
    }
  goto ret0;

 L16597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61892;
  goto ret0;

 L61892: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17500;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L16598;
    }
  goto ret0;

 L17500: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L17501;
    }
  goto ret0;

 L17501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L17502;
    }
  goto ret0;

 L17502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V4SFmode)
    goto L61894;
  goto ret0;

 L61894: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17945;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L17503;
    }
  goto ret0;

 L17945: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L17946;
    }
  goto ret0;

 L17946: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1748;  /* *fma_fnmsub_v4sf */
    }
 L18216: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1771;  /* *fma_fnmsub_v4sf */
    }
  goto ret0;

 L17503: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1706;  /* *fma_fnmadd_v4sf */
    }
 L17606: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1717;  /* *fma_fnmadd_v4sf */
    }
  goto ret0;

 L16598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L16599;
    }
  goto ret0;

 L16599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V4SFmode)
    goto L61896;
  goto ret0;

 L61896: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17030;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L16600;
    }
  goto ret0;

 L17030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L17031;
    }
  goto ret0;

 L17031: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1662;  /* *fma_fmsub_v4sf */
    }
 L17134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1673;  /* *fma_fmsub_v4sf */
    }
  goto ret0;

 L16600: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3201 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1618;  /* *fma_fmadd_v4sf */
    }
 L16692: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3214 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1629;  /* *fma_fmadd_v4sf */
    }
  goto ret0;

 L20003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4SImode:
      goto L61897;
    case V4DImode:
      goto L61898;
    default:
      break;
    }
  goto ret0;

 L61897: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L20004;
    }
  goto ret0;

 L20004: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && 1))
    {
      return 1937;  /* floatv4siv4sf2 */
    }
  goto ret0;

 L61898: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L20905;
    }
  goto ret0;

 L20905: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2052;  /* floatv4div4sf2 */
    }
  goto ret0;

 L20080: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4SImode:
      goto L61899;
    case V4DImode:
      goto L61900;
    default:
      break;
    }
  goto ret0;

 L61899: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L20081;
    }
  goto ret0;

 L20081: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1947;  /* ufloatv4siv4sf2 */
    }
  goto ret0;

 L61900: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L20918;
    }
  goto ret0;

 L20918: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 233 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2054;  /* ufloatv4div4sf2 */
    }
  goto ret0;

 L21818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L21819;
    }
  goto ret0;

 L21819: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4889 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2165;  /* avx_cvtpd2ps256 */
    }
  goto ret0;

 L22187: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L22188;
  goto ret0;

 L22188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L61901;
  goto ret0;

 L61901: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22189;
    }
 L61902: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22359;
    }
 L61903: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22607;
    }
  goto ret0;

 L22189: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L22190;
    }
  x3 = XEXP (x2, 0);
  goto L61902;

 L22190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22191;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22191: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61904;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L61904: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L22192;
      case 0LL:
        goto L22317;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22192: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22193;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22193: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22194;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22194: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 5797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1))
    {
      return 2209;  /* vec_interleave_highv4sf */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22317: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22318;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22318: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22319;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22319: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)]
      && 
#line 5902 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2216;  /* vec_interleave_lowv4sf */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61902;

 L22359: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L22360;
  x3 = XEXP (x2, 0);
  goto L61903;

 L22360: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22361;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22361: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61906;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L61906: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L22362;
      case 0LL:
        goto L22472;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22362: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22363;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22363: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22364;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22364: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 5939 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3 && 1))
    {
      return 2219;  /* sse3_movshdup */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22472: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22473;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22473: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22474;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22474: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)]
      && 
#line 5992 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3 && 1))
    {
      return 2225;  /* sse3_movsldup */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L61903;

 L22607: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L22608;
    }
  goto ret0;

 L22608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22609;
  goto ret0;

 L22609: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22610;
    }
  goto ret0;

 L22610: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L22611;
    }
  goto ret0;

 L22611: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L22612;
    }
  goto ret0;

 L22612: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L22613;
    }
  goto ret0;

 L22613: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6136 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2233;  /* sse_shufps_v4sf */
    }
  goto ret0;

 L22663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L22664;
  goto ret0;

 L22664: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22665;
    }
  goto ret0;

 L22665: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L22666;
  goto ret0;

 L22666: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 6292 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 2240;  /* avx2_vec_dupv4sf */
    }
  goto ret0;

 L15282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L15283;
    }
  goto ret0;

 L15283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L15284;
    }
  goto ret0;

 L15284: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2450 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE))
    {
      return 1457;  /* *sse_maskcmpv4sf3_comm */
    }
 L15308: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2466 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1461;  /* sse_maskcmpv4sf3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_97 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L62004;
    case 1:
      goto L62005;
    case 4:
      goto L62007;
    case 3:
      goto L62009;
    default:
      break;
    }
  goto ret0;

 L62004: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23745;
    case 160LL:
      goto L24373;
    case 82LL:
      goto L25188;
    case 136LL:
      goto L42609;
    case 161LL:
      goto L51033;
    default:
      break;
    }
  goto ret0;

 L23745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L23746;
    }
  goto ret0;

 L23746: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L23747;
    }
  goto ret0;

 L23747: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L23748;
 L23874: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L23875;
    }
  goto ret0;

 L23748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 7657 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2328;  /* avx512f_vmscalefv4sf */
    }
  x2 = XEXP (x1, 1);
  goto L23874;

 L23875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23876;
    }
  goto ret0;

 L23876: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2342;  /* avx512vl_scalefv4sf_mask */
    }
  goto ret0;

 L24373: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L24374;
    }
  goto ret0;

 L24374: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L24375;
    }
  goto ret0;

 L24375: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L24376;
  goto ret0;

 L24376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 7737 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2398;  /* avx512f_sgetexpv4sf */
    }
  goto ret0;

 L25188: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L62021;
  goto ret0;

 L62021: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L25189;
    }
 L62022: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L39026;
    }
  goto ret0;

 L25189: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25190;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62022;

 L25190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L25191;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62022;

 L25191: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25192;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62022;

 L25192: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2472;  /* avx512vl_rndscalev4sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62022;

 L39026: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39027;
    }
  goto ret0;

 L39027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L39028;
    }
  goto ret0;

 L39028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 14581 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_ROUND))
    {
      return 3687;  /* sse4_1_roundss */
    }
  goto ret0;

 L42609: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L42610;
    }
  goto ret0;

 L42610: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L42611;
    }
  goto ret0;

 L42611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L42612;
    }
  goto ret0;

 L42612: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L42613;
    }
  goto ret0;

 L42613: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (16 == 64 || TARGET_AVX512VL))))
    {
      return 4080;  /* avx_vpermilvarv4sf3_mask */
    }
  goto ret0;

 L51033: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L51034;
    }
  goto ret0;

 L51034: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51035;
    }
  goto ret0;

 L51035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L51036;
    }
  goto ret0;

 L51036: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51037;
    }
  goto ret0;

 L51037: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4625;  /* avx512vl_getmantv4sf_mask */
    }
  goto ret0;

 L62005: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 160LL:
      goto L24258;
    case 173LL:
      goto L39653;
    case 174LL:
      goto L39753;
    case 127LL:
      goto L40832;
    case 141LL:
      goto L44616;
    default:
      break;
    }
  goto ret0;

 L24258: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L24259;
    }
  goto ret0;

 L24259: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L24260;
    }
  goto ret0;

 L24260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L24261;
    }
  goto ret0;

 L24261: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2384;  /* avx512vl_getexpv4sf_mask */
    }
  goto ret0;

 L39653: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L39654;
    }
  goto ret0;

 L39654: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L39655;
    }
  goto ret0;

 L39655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 15401 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3747;  /* avx512er_vmrcp28v4sf */
    }
  goto ret0;

 L39753: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L39754;
    }
  goto ret0;

 L39754: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L39755;
    }
  goto ret0;

 L39755: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 15427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3759;  /* avx512er_vmrsqrt28v4sf */
    }
  goto ret0;

 L40832: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L40833;
    }
  goto ret0;

 L40833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L40834;
    }
  goto ret0;

 L40834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 16246 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3836;  /* *xop_vmfrczv4sf2 */
    }
  goto ret0;

 L44616: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, V4HImode))
    {
      operands[1] = x3;
      goto L44617;
    }
  goto ret0;

 L44617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L44618;
    }
  goto ret0;

 L44618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L44619;
    }
  goto ret0;

 L44619: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17866 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL)))
    {
      return 4315;  /* *vcvtph2ps_load_mask */
    }
  goto ret0;

 L62007: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24622;
  goto ret0;

 L24622: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L24623;
    }
  goto ret0;

 L24623: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L24624;
    }
  goto ret0;

 L24624: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L24625;
    }
  goto ret0;

 L24625: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24626;
    }
  goto ret0;

 L24626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L24627;
    }
 L24833: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24834;
  goto ret0;

 L24627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24628;
    }
  x2 = XEXP (x1, 1);
  goto L24833;

 L24628: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2424;  /* avx512vl_fixupimmv4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24833;

 L24834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24835;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 7857 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2450;  /* avx512f_sfixupimmv4sf */
    }
  goto ret0;

 L24835: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2442;  /* avx512vl_fixupimmv4sf_mask */
    }
  goto ret0;

 L62009: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 82LL:
      goto L25317;
    case 147LL:
      goto L42823;
    case 149LL:
      goto L43059;
    case 148LL:
      goto L43309;
    case 190LL:
      goto L50720;
    case 161LL:
      goto L51162;
    default:
      break;
    }
  goto ret0;

 L25317: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L25318;
    }
  goto ret0;

 L25318: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L25319;
    }
  goto ret0;

 L25319: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L25320;
    }
  goto ret0;

 L25320: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L25321;
  goto ret0;

 L25321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 7903 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2486;  /* avx512f_rndscalev4sf */
    }
  goto ret0;

 L42823: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L42824;
    }
  goto ret0;

 L42824: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L42825;
    }
  goto ret0;

 L42825: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L42826;
    }
  goto ret0;

 L42826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L42827;
    }
  goto ret0;

 L42827: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42828;
    }
  goto ret0;

 L42828: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4106;  /* avx512vl_vpermi2varv4sf3_maskz_1 */
    }
  goto ret0;

 L43059: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L43060;
    }
  goto ret0;

 L43060: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L43061;
    }
  goto ret0;

 L43061: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L43062;
    }
  goto ret0;

 L43062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43063;
  goto ret0;

 L43063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43064;
    }
  goto ret0;

 L43064: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4132;  /* avx512vl_vpermi2varv4sf3_mask */
    }
  goto ret0;

 L43309: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L43310;
    }
  goto ret0;

 L43310: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L43311;
    }
  goto ret0;

 L43311: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L43312;
    }
  goto ret0;

 L43312: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L43313;
    }
 L43548: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43549;
  goto ret0;

 L43313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43314;
    }
  x2 = XEXP (x1, 1);
  goto L43548;

 L43314: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4160;  /* avx512vl_vpermt2varv4sf3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43548;

 L43549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43550;
    }
  goto ret0;

 L43550: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4186;  /* avx512vl_vpermt2varv4sf3_mask */
    }
  goto ret0;

 L50720: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L50721;
    }
  goto ret0;

 L50721: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L50722;
    }
  goto ret0;

 L50722: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50807;
    }
  goto ret0;

 L50807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L50808;
 L50723: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L50724;
    }
  goto ret0;

 L50808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 18429 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4597;  /* avx512dq_rangesv4sf */
    }
  x2 = XEXP (x1, 1);
  goto L50723;

 L50724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L50725;
    }
  goto ret0;

 L50725: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4588;  /* avx512dq_rangepv4sf_mask */
    }
  goto ret0;

 L51162: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L51163;
    }
  goto ret0;

 L51163: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L51164;
    }
  goto ret0;

 L51164: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51165;
    }
  goto ret0;

 L51165: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L51166;
  goto ret0;

 L51166: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 18484 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4639;  /* avx512f_vgetmantv4sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_98 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 2:
      goto L62025;
    case 1:
      goto L62026;
    case 4:
      goto L62027;
    case 3:
      goto L62029;
    default:
      break;
    }
  goto ret0;

 L62025: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 158LL:
      goto L23856;
    case 82LL:
      goto L25172;
    case 136LL:
      goto L42602;
    case 42LL:
      goto L43998;
    case 161LL:
      goto L51017;
    default:
      break;
    }
  goto ret0;

 L23856: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L23857;
    }
  goto ret0;

 L23857: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L23858;
    }
  goto ret0;

 L23858: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2340;  /* avx512vl_scalefv4sf */
    }
  goto ret0;

 L25172: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L25173;
    }
  goto ret0;

 L25173: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L62044;
  goto ret0;

 L62044: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L25174;
    }
 L62045: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39008;
    }
  goto ret0;

 L25174: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2470;  /* avx512vl_rndscalev4sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 1);
  goto L62045;

 L39008: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14495 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_ROUND))
    {
      return 3684;  /* sse4_1_roundps */
    }
  goto ret0;

 L42602: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L42603;
    }
  goto ret0;

 L42603: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L42604;
    }
  goto ret0;

 L42604: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 4079;  /* avx_vpermilvarv4sf3 */
    }
  goto ret0;

 L43998: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L43999;
    }
  goto ret0;

 L43999: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L44000;
    }
  goto ret0;

 L44000: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4227;  /* avx_maskloadps */
    }
  goto ret0;

 L51017: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L51018;
    }
  goto ret0;

 L51018: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L51019;
    }
  goto ret0;

 L51019: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4623;  /* avx512vl_getmantv4sf */
    }
  goto ret0;

 L62026: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 160LL:
      goto L24244;
    case 127LL:
      goto L40811;
    case 141LL:
      goto L44610;
    default:
      break;
    }
  goto ret0;

 L24244: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L24245;
    }
  goto ret0;

 L24245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2382;  /* avx512vl_getexpv4sf */
    }
  goto ret0;

 L40811: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L40812;
    }
  goto ret0;

 L40812: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3832;  /* xop_frczv4sf2 */
    }
  goto ret0;

 L44610: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, V4HImode))
    {
      operands[1] = x2;
      goto L44611;
    }
  goto ret0;

 L44611: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17866 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL))
    {
      return 4314;  /* *vcvtph2ps_load */
    }
  goto ret0;

 L62027: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 157LL:
      goto L24602;
    case 137LL:
      goto L40957;
    case 145LL:
      goto L45029;
    default:
      break;
    }
  goto ret0;

 L24602: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L24603;
    }
  goto ret0;

 L24603: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L24604;
    }
  goto ret0;

 L24604: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L24605;
    }
  goto ret0;

 L24605: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24606;
    }
  goto ret0;

 L24606: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2422;  /* avx512vl_fixupimmv4sf */
    }
  goto ret0;

 L40957: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L40958;
    }
  goto ret0;

 L40958: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L40959;
    }
  goto ret0;

 L40959: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L40960;
    }
  goto ret0;

 L40960: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_3_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L40961;
    }
  goto ret0;

 L40961: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16326 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3855;  /* xop_vpermil2v4sf3 */
    }
  goto ret0;

 L45029: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L45030;
    }
  if (GET_CODE (x2) == PC)
    goto L45494;
  goto ret0;

 L45030: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[7] = x2;
      goto L45031;
    }
  goto ret0;

 L45031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62046;
    case DImode:
      goto L62047;
    default:
      break;
    }
  goto ret0;

 L62046: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45032;
  goto ret0;

 L45032: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L45033;
    }
  goto ret0;

 L45033: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62048;
    case V2DImode:
      goto L62049;
    default:
      break;
    }
  goto ret0;

 L62048: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L45034;
    }
  goto ret0;

 L45034: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45035;
    }
  goto ret0;

 L45035: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45036;
  goto ret0;

 L45036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45037;
  goto ret0;

 L45037: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L45038;
    }
  goto ret0;

 L45038: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4339;  /* *avx2_gathersiv4sf */
    }
  goto ret0;

 L62049: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45962;
    }
  goto ret0;

 L45962: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45963;
    }
  goto ret0;

 L45963: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45964;
  goto ret0;

 L45964: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45965;
  goto ret0;

 L45965: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L45966;
    }
  goto ret0;

 L45966: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4371;  /* *avx2_gatherdiv4sf */
    }
  goto ret0;

 L62047: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45061;
  goto ret0;

 L45061: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L45062;
    }
  goto ret0;

 L45062: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62050;
    case V2DImode:
      goto L62051;
    default:
      break;
    }
  goto ret0;

 L62050: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L45063;
    }
  goto ret0;

 L45063: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45064;
    }
  goto ret0;

 L45064: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45065;
  goto ret0;

 L45065: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45066;
  goto ret0;

 L45066: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L45067;
    }
  goto ret0;

 L45067: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4340;  /* *avx2_gathersiv4sf */
    }
  goto ret0;

 L62051: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45991;
    }
  goto ret0;

 L45991: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45992;
    }
  goto ret0;

 L45992: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45993;
  goto ret0;

 L45993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45994;
  goto ret0;

 L45994: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L45995;
    }
  goto ret0;

 L45995: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4372;  /* *avx2_gatherdiv4sf */
    }
  goto ret0;

 L45494: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L45495;
    }
  goto ret0;

 L45495: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62052;
    case DImode:
      goto L62053;
    default:
      break;
    }
  goto ret0;

 L62052: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45496;
  goto ret0;

 L45496: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45497;
    }
  goto ret0;

 L45497: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62054;
    case V2DImode:
      goto L62055;
    default:
      break;
    }
  goto ret0;

 L62054: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45498;
    }
  goto ret0;

 L45498: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45499;
    }
  goto ret0;

 L45499: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45500;
  goto ret0;

 L45500: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45501;
  goto ret0;

 L45501: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L45502;
    }
  goto ret0;

 L45502: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4355;  /* *avx2_gathersiv4sf_2 */
    }
  goto ret0;

 L62055: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46426;
    }
  goto ret0;

 L46426: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46427;
    }
  goto ret0;

 L46427: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46428;
  goto ret0;

 L46428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46429;
  goto ret0;

 L46429: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L46430;
    }
  goto ret0;

 L46430: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4387;  /* *avx2_gatherdiv4sf_2 */
    }
  goto ret0;

 L62053: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45525;
  goto ret0;

 L45525: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45526;
    }
  goto ret0;

 L45526: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62056;
    case V2DImode:
      goto L62057;
    default:
      break;
    }
  goto ret0;

 L62056: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45527;
    }
  goto ret0;

 L45527: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45528;
    }
  goto ret0;

 L45528: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45529;
  goto ret0;

 L45529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45530;
  goto ret0;

 L45530: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L45531;
    }
  goto ret0;

 L45531: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4356;  /* *avx2_gathersiv4sf_2 */
    }
  goto ret0;

 L62057: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46455;
    }
  goto ret0;

 L46455: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46456;
    }
  goto ret0;

 L46456: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46457;
  goto ret0;

 L46457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46458;
  goto ret0;

 L46458: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L46459;
    }
  goto ret0;

 L46459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4388;  /* *avx2_gatherdiv4sf_2 */
    }
  goto ret0;

 L62029: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 114LL:
      goto L38070;
    case 116LL:
      goto L38098;
    case 147LL:
      goto L42815;
    case 148LL:
      goto L43301;
    case 145LL:
      goto L47363;
    case 164LL:
      goto L50466;
    case 166LL:
      goto L50634;
    case 190LL:
      goto L50712;
    default:
      break;
    }
  goto ret0;

 L38070: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L38071;
    }
  goto ret0;

 L38071: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L38072;
    }
  goto ret0;

 L38072: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L38073;
    }
  goto ret0;

 L38073: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3580;  /* sse4_1_blendvps */
    }
  goto ret0;

 L38098: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L38099;
    }
  goto ret0;

 L38099: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L38100;
    }
  goto ret0;

 L38100: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38101;
    }
  goto ret0;

 L38101: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14056 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3584;  /* sse4_1_dpps */
    }
  goto ret0;

 L42815: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L42816;
    }
  goto ret0;

 L42816: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L42817;
    }
  goto ret0;

 L42817: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L42818;
    }
  goto ret0;

 L42818: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4105;  /* avx512vl_vpermi2varv4sf3 */
    }
  goto ret0;

 L43301: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L43302;
    }
  goto ret0;

 L43302: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L43303;
    }
  goto ret0;

 L43303: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L43304;
    }
  goto ret0;

 L43304: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4159;  /* avx512vl_vpermt2varv4sf3 */
    }
  goto ret0;

 L47363: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L47364;
    }
  if (GET_CODE (x2) == PC)
    goto L47964;
  goto ret0;

 L47364: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47365;
    }
  goto ret0;

 L47365: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[6] = x2;
      goto L47366;
    }
  goto ret0;

 L47366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62058;
    case DImode:
      goto L62059;
    default:
      break;
    }
  goto ret0;

 L62058: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47367;
  goto ret0;

 L47367: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47368;
    }
  goto ret0;

 L47368: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62060;
    case V2DImode:
      goto L62061;
    default:
      break;
    }
  goto ret0;

 L62060: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47369;
    }
  goto ret0;

 L47369: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47370;
    }
  goto ret0;

 L47370: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4419;  /* *avx512f_gathersiv4sf */
    }
  goto ret0;

 L62061: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48569;
    }
  goto ret0;

 L48569: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48570;
    }
  goto ret0;

 L48570: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4467;  /* *avx512f_gatherdiv4sf */
    }
  goto ret0;

 L62059: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47392;
  goto ret0;

 L47392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47393;
    }
  goto ret0;

 L47393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62062;
    case V2DImode:
      goto L62063;
    default:
      break;
    }
  goto ret0;

 L62062: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47394;
    }
  goto ret0;

 L47394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47395;
    }
  goto ret0;

 L47395: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4420;  /* *avx512f_gathersiv4sf */
    }
  goto ret0;

 L62063: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48594;
    }
  goto ret0;

 L48594: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48595;
    }
  goto ret0;

 L48595: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4468;  /* *avx512f_gatherdiv4sf */
    }
  goto ret0;

 L47964: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47965;
    }
  goto ret0;

 L47965: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, SFmode))
    {
      operands[5] = x2;
      goto L47966;
    }
  goto ret0;

 L47966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62064;
    case DImode:
      goto L62065;
    default:
      break;
    }
  goto ret0;

 L62064: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47967;
  goto ret0;

 L47967: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47968;
    }
  goto ret0;

 L47968: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62066;
    case V2DImode:
      goto L62067;
    default:
      break;
    }
  goto ret0;

 L62066: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47969;
    }
  goto ret0;

 L47969: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47970;
    }
  goto ret0;

 L47970: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4443;  /* *avx512f_gathersiv4sf_2 */
    }
  goto ret0;

 L62067: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49169;
    }
  goto ret0;

 L49169: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49170;
    }
  goto ret0;

 L49170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4491;  /* *avx512f_gatherdiv4sf_2 */
    }
  goto ret0;

 L62065: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47992;
  goto ret0;

 L47992: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47993;
    }
  goto ret0;

 L47993: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62068;
    case V2DImode:
      goto L62069;
    default:
      break;
    }
  goto ret0;

 L62068: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47994;
    }
  goto ret0;

 L47994: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47995;
    }
  goto ret0;

 L47995: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4444;  /* *avx512f_gathersiv4sf_2 */
    }
  goto ret0;

 L62069: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49194;
    }
  goto ret0;

 L49194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49195;
    }
  goto ret0;

 L49195: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4492;  /* *avx512f_gatherdiv4sf_2 */
    }
  goto ret0;

 L50466: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L50467;
    }
  goto ret0;

 L50467: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L50468;
    }
  goto ret0;

 L50468: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50469;
    }
  goto ret0;

 L50469: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4554;  /* avx512vl_compressv4sf_mask */
    }
  goto ret0;

 L50634: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L50635;
    }
  goto ret0;

 L50635: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L50636;
    }
  goto ret0;

 L50636: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50637;
    }
  goto ret0;

 L50637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4578;  /* avx512vl_expandv4sf_mask */
    }
  goto ret0;

 L50712: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L50713;
    }
  goto ret0;

 L50713: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L50714;
    }
  goto ret0;

 L50714: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50715;
    }
  goto ret0;

 L50715: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4587;  /* avx512dq_rangepv4sf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_99 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22854;
    case UNSPEC:
      goto L61942;
    case IF_THEN_ELSE:
      goto L40100;
    case VEC_DUPLICATE:
      goto L41628;
    case VEC_SELECT:
      goto L42449;
    default:
     break;
   }
  goto ret0;

 L22854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61961;
  goto ret0;

 L61961: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L22855;
    case UNSPEC:
      goto L61982;
    case VEC_MERGE:
      goto L24953;
    case VEC_DUPLICATE:
      goto L41636;
    case REG:
    case SUBREG:
    case MEM:
      goto L61969;
    default:
      goto ret0;
   }
 L61969: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L38043;
    }
  goto ret0;

 L22855: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16SFmode:
      goto L61999;
    case V8SFmode:
      goto L62003;
    case V4SFmode:
      goto L62002;
    default:
      break;
    }
  goto ret0;

 L61999: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L22856;
    }
  goto ret0;

 L22856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22857;
  goto ret0;

 L22857: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22858;
    }
  goto ret0;

 L22858: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22859;
    }
  goto ret0;

 L22859: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L22860;
    }
  goto ret0;

 L22860: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L22861;
    }
  goto ret0;

 L22861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[6] = x2;
      goto L22862;
    }
  goto ret0;

 L22862: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L22863;
    }
  goto ret0;

 L22863: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6702 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[2]) == (INTVAL (operands[3]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[4]) == (INTVAL (operands[5]) - 1)))))
    {
      return 2263;  /* avx512f_vextractf32x4_1_mask */
    }
  goto ret0;

 L62003: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 141)
    goto L44598;
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L23289;
    }
 L62001: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L23385;
    }
  goto ret0;

 L44598: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L44599;
    }
  goto ret0;

 L44599: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L44600;
  goto ret0;

 L44600: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L44601;
  goto ret0;

 L44601: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L44602;
  goto ret0;

 L44602: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L44603;
  goto ret0;

 L44603: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L44604;
  goto ret0;

 L44604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L44605;
    }
  goto ret0;

 L44605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L44606;
    }
  goto ret0;

 L44606: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17856 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL)))
    {
      return 4313;  /* vcvtph2ps_mask */
    }
  goto ret0;

 L23289: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23290;
  x3 = XEXP (x2, 0);
  goto L62001;

 L23290: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23291;
  x3 = XEXP (x2, 0);
  goto L62001;

 L23291: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23292;
  x3 = XEXP (x2, 0);
  goto L62001;

 L23292: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23293;
  x3 = XEXP (x2, 0);
  goto L62001;

 L23293: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23294;
  x3 = XEXP (x2, 0);
  goto L62001;

 L23294: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L23295;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62001;

 L23295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23296;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62001;

 L23296: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7062 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL && TARGET_AVX512DQ)))
    {
      return 2299;  /* vec_extract_lo_v8sf_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62001;

 L23385: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23386;
  goto ret0;

 L23386: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23387;
  goto ret0;

 L23387: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23388;
  goto ret0;

 L23388: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23389;
  goto ret0;

 L23389: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23390;
  goto ret0;

 L23390: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L23391;
    }
  goto ret0;

 L23391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23392;
    }
  goto ret0;

 L23392: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7117 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2307;  /* vec_extract_hi_v8sf_mask */
    }
  goto ret0;

 L62002: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L42513;
    }
  goto ret0;

 L42513: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) >= 1)
    {
      operands[2] = x3;
      goto L42514;
    }
  goto ret0;

 L42514: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L42515;
    }
  goto ret0;

 L42515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L42516;
    }
  goto ret0;

 L42516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42517;
    }
  goto ret0;

 L42517: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (16 == 64 || TARGET_AVX512VL)
   && avx_vpermilp_parallel (operands[2], V4SFmode))))
    {
      return 4068;  /* *avx_vpermilpv4sf_mask */
    }
  goto ret0;

 L61982: ATTRIBUTE_UNUSED_LABEL
  return recog_97 (x0, insn, pnum_clobbers);

 L24953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 4
      && XINT (x3, 1) == 157)
    goto L24954;
  goto ret0;

 L24954: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L24955;
    }
  goto ret0;

 L24955: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L24956;
    }
  goto ret0;

 L24956: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L24957;
    }
  goto ret0;

 L24957: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24958;
    }
  goto ret0;

 L24958: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L24959;
  goto ret0;

 L24959: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L24960;
  goto ret0;

 L24960: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L24961;
    }
 L25046: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L25047;
  goto ret0;

 L24961: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24962;
    }
  x2 = XEXP (x1, 1);
  goto L25046;

 L24962: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7857 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2452;  /* avx512f_sfixupimmv4sf_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L25046;

 L25047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L25048;
    }
  goto ret0;

 L25048: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2458;  /* avx512f_sfixupimmv4sf_mask */
    }
  goto ret0;

 L41636: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode)
    goto L62023;
  goto ret0;

 L62023: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41637;
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L42049;
    }
  goto ret0;

 L41637: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L41638;
    }
  goto ret0;

 L41638: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41639;
  goto ret0;

 L41639: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41640;
  goto ret0;

 L41640: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L41641;
    }
  goto ret0;

 L41641: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41642;
    }
  goto ret0;

 L41642: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3942;  /* avx512vl_vec_dupv4sf_mask */
    }
  goto ret0;

 L42049: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L42050;
    }
  goto ret0;

 L42050: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42051;
    }
  goto ret0;

 L42051: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3998;  /* avx512vl_vec_dup_gprv4sf_mask */
    }
  goto ret0;

 L38043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L38044;
    }
  goto ret0;

 L38044: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38045;
    }
  goto ret0;

 L38045: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3576;  /* sse4_1_blendps */
    }
  goto ret0;

 L61942: ATTRIBUTE_UNUSED_LABEL
  return recog_98 (x0, insn, pnum_clobbers);

 L40100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L40101;
    }
  goto ret0;

 L40101: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L40102;
    }
  goto ret0;

 L40102: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L40103;
    }
  goto ret0;

 L40103: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3787;  /* xop_pcmov_v4sf */
    }
  goto ret0;

 L41628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode)
    goto L62070;
  goto ret0;

 L62070: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41629;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L42043;
    }
  goto ret0;

 L41629: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L41630;
    }
  goto ret0;

 L41630: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41631;
  goto ret0;

 L41631: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3941;  /* avx512vl_vec_dupv4sf */
    }
  goto ret0;

 L42043: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3997;  /* *avx512vl_vec_dup_gprv4sf */
    }
 L42095: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16720 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 4005;  /* vec_dupv4sf */
    }
  goto ret0;

 L42449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L62072;
    case V8SFmode:
      goto L62074;
    default:
      break;
    }
  goto ret0;

 L62072: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L42450;
    }
 L62073: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L43711;
    }
  goto ret0;

 L42450: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L62076;
  x2 = XEXP (x1, 0);
  goto L62073;

 L62076: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1
      && avx_vbroadcast_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L42451;
    }
 L62077: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[2] = x2;
      goto L42506;
    }
  x2 = XEXP (x1, 0);
  goto L62073;

 L42451: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42452;
    }
  goto L62077;

 L42452: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16961 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4060;  /* *avx_vperm_broadcast_v4sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L62077;

 L42506: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42507;
    }
  x2 = XEXP (x1, 0);
  goto L62073;

 L42507: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1
   && avx_vpermilp_parallel (operands[2], V4SFmode)))
    {
      return 4067;  /* *avx_vpermilpv4sf */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62073;

 L43711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && palignr_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L43712;
    }
  goto ret0;

 L43712: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L43713;
    }
  goto ret0;

 L43713: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17444 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 4205;  /* *ssse3_palignrv4sf_perm */
    }
  goto ret0;

 L62074: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L62078;
  goto ret0;

 L62078: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L62080;
    case 4:
      goto L62081;
    default:
      break;
    }
  goto ret0;

 L62080: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 141)
    goto L44587;
  goto ret0;

 L44587: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L44588;
    }
  goto ret0;

 L44588: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L44589;
  goto ret0;

 L44589: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L44590;
  goto ret0;

 L44590: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L44591;
  goto ret0;

 L44591: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L44592;
  goto ret0;

 L44592: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 17856 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL))
    {
      return 4312;  /* vcvtph2ps */
    }
  goto ret0;

 L62081: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L46682;
  goto ret0;

 L46682: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L46683;
    }
  if (GET_CODE (x3) == PC)
    goto L46843;
  goto ret0;

 L46683: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[7] = x3;
      goto L46684;
    }
  goto ret0;

 L46684: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L62082;
    case DImode:
      goto L62083;
    default:
      break;
    }
  goto ret0;

 L62082: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46685;
  goto ret0;

 L46685: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L46686;
    }
  goto ret0;

 L46686: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46687;
    }
  goto ret0;

 L46687: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46688;
    }
  goto ret0;

 L46688: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46689;
  goto ret0;

 L46689: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46690;
  goto ret0;

 L46690: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L46691;
    }
  goto ret0;

 L46691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46692;
  goto ret0;

 L46692: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46693;
  goto ret0;

 L46693: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46694;
  goto ret0;

 L46694: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46695;
  goto ret0;

 L46695: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4395;  /* *avx2_gatherdiv8sf_3 */
    }
  goto ret0;

 L62083: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46725;
  goto ret0;

 L46725: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L46726;
    }
  goto ret0;

 L46726: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46727;
    }
  goto ret0;

 L46727: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46728;
    }
  goto ret0;

 L46728: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46729;
  goto ret0;

 L46729: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46730;
  goto ret0;

 L46730: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L46731;
    }
  goto ret0;

 L46731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46732;
  goto ret0;

 L46732: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46733;
  goto ret0;

 L46733: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46734;
  goto ret0;

 L46734: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46735;
  goto ret0;

 L46735: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4396;  /* *avx2_gatherdiv8sf_3 */
    }
  goto ret0;

 L46843: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L46844;
    }
  goto ret0;

 L46844: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L62084;
    case DImode:
      goto L62085;
    default:
      break;
    }
  goto ret0;

 L62084: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46845;
  goto ret0;

 L46845: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L46846;
    }
  goto ret0;

 L46846: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46847;
    }
  goto ret0;

 L46847: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46848;
    }
  goto ret0;

 L46848: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46849;
  goto ret0;

 L46849: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46850;
  goto ret0;

 L46850: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L46851;
    }
  goto ret0;

 L46851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46852;
  goto ret0;

 L46852: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46853;
  goto ret0;

 L46853: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46854;
  goto ret0;

 L46854: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46855;
  goto ret0;

 L46855: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4399;  /* *avx2_gatherdiv8sf_4 */
    }
  goto ret0;

 L62085: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46885;
  goto ret0;

 L46885: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L46886;
    }
  goto ret0;

 L46886: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46887;
    }
  goto ret0;

 L46887: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46888;
    }
  goto ret0;

 L46888: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46889;
  goto ret0;

 L46889: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46890;
  goto ret0;

 L46890: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L46891;
    }
  goto ret0;

 L46891: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L46892;
  goto ret0;

 L46892: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46893;
  goto ret0;

 L46893: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46894;
  goto ret0;

 L46894: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46895;
  goto ret0;

 L46895: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && (
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4400;  /* *avx2_gatherdiv8sf_4 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_100 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V4SFmode))
    {
      operands[5] = x1;
      goto L49725;
    }
 L57067: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L22080;
    }
 L57079: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L11612;
    }
 L57097: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L11864;
    }
 L57118: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L22853;
    }
 L57125: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L23312;
    }
  goto ret0;

 L49725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L61694;
    case DImode:
      goto L61695;
    default:
      break;
    }
  goto L57067;

 L61694: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49726;
  goto L57067;

 L49726: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49727;
    }
  goto L57067;

 L49727: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L61696;
    case V2DImode:
      goto L61697;
    default:
      break;
    }
  goto L57067;

 L61696: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49728;
    }
  goto L57067;

 L49728: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49729;
    }
  goto L57067;

 L49729: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49730;
  x1 = XEXP (x0, 0);
  goto L57067;

 L49730: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49731;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L49731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L49732;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L49732: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4515;  /* *avx512f_scattersiv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L61697: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50280;
    }
  goto L57067;

 L50280: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50281;
    }
  goto L57067;

 L50281: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50282;
  x1 = XEXP (x0, 0);
  goto L57067;

 L50282: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50283;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L50283: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L50284;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L50284: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4539;  /* *avx512f_scatterdiv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L61695: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49749;
  goto L57067;

 L49749: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49750;
    }
  goto L57067;

 L49750: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L61698;
    case V2DImode:
      goto L61699;
    default:
      break;
    }
  goto L57067;

 L61698: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49751;
    }
  goto L57067;

 L49751: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49752;
    }
  goto L57067;

 L49752: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49753;
  x1 = XEXP (x0, 0);
  goto L57067;

 L49753: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49754;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L49754: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L49755;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L49755: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4516;  /* *avx512f_scattersiv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L61699: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50303;
    }
  goto L57067;

 L50303: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50304;
    }
  goto L57067;

 L50304: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50305;
  x1 = XEXP (x0, 0);
  goto L57067;

 L50305: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50306;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L50306: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L50307;
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L50307: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4540;  /* *avx512f_scatterdiv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L57067;

 L22080: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode)
    goto L61700;
 L11540: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V4SFmode))
    {
      operands[1] = x1;
      goto L11541;
    }
  x1 = XEXP (x0, 0);
  goto L57079;

 L61700: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L22081;
    case VEC_CONCAT:
      goto L22624;
    case VEC_MERGE:
      goto L22716;
    default:
     break;
   }
  goto L11540;

 L22081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L61703;
    case V16SFmode:
      goto L61704;
    default:
      break;
    }
  goto L11540;

 L61703: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L22082;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L23279;
    }
 L61706: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L23375;
    }
  goto L11540;

 L22082: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22083;
    }
  goto L11540;

 L22083: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L22084;
    }
  goto L11540;

 L22084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22085;
  goto L11540;

 L22085: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L61707;
  goto L11540;

 L61707: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 6LL:
        goto L22086;
      case 0LL:
        goto L22097;
      default:
        break;
      }
  goto L11540;

 L22086: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22087;
  goto L11540;

 L22087: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22088;
  goto L11540;

 L22088: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 5659 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 2203;  /* sse_movhlps */
    }
  goto L11540;

 L22097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22098;
  goto L11540;

 L22098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22099;
  goto L11540;

 L22099: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)]
      && 
#line 5705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (UNKNOWN, V4SFmode, operands)))
    {
      return 2204;  /* sse_movlhps */
    }
  goto L11540;

 L23279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23280;
  x2 = XEXP (x1, 0);
  goto L61706;

 L23280: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23281;
  x2 = XEXP (x1, 0);
  goto L61706;

 L23281: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23282;
  x2 = XEXP (x1, 0);
  goto L61706;

 L23282: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23283;
  x2 = XEXP (x1, 0);
  goto L61706;

 L23283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7062 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && 1))
    {
      return 2298;  /* vec_extract_lo_v8sf */
    }
  x2 = XEXP (x1, 0);
  goto L61706;

 L23375: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23376;
  goto L11540;

 L23376: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23377;
  goto L11540;

 L23377: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23378;
  goto L11540;

 L23378: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23379;
  goto L11540;

 L23379: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 7117 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2306;  /* vec_extract_hi_v8sf */
    }
  goto L11540;

 L61704: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L22845;
    }
  goto L11540;

 L22845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22846;
  goto L11540;

 L22846: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L22847;
    }
  goto L11540;

 L22847: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22848;
    }
  goto L11540;

 L22848: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L22849;
    }
  goto L11540;

 L22849: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L22850;
    }
  goto L11540;

 L22850: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6702 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[2]) == (INTVAL (operands[3]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[4]) == (INTVAL (operands[5]) - 1))))
    {
      return 2262;  /* *avx512f_vextractf32x4_1 */
    }
  x1 = XEXP (x0, 1);
  goto L11540;

 L22624: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SFmode)
    goto L61709;
  goto L11540;

 L61709: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L22625;
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L22642;
    }
  goto L11540;

 L22625: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22626;
    }
  goto L11540;

 L22626: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22627;
  goto L11540;

 L22627: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22628;
  goto L11540;

 L22628: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22629;
  goto L11540;

 L22629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[2] = x2;
      goto L22630;
    }
  goto L11540;

 L22630: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6203 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2235;  /* sse_loadhps */
    }
  x1 = XEXP (x0, 1);
  goto L11540;

 L22642: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L22643;
  goto L11540;

 L22643: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22644;
    }
  goto L11540;

 L22644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22645;
  goto L11540;

 L22645: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22646;
  goto L11540;

 L22646: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 6257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2237;  /* sse_loadlps */
    }
  goto L11540;

 L22716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L22717;
  goto L11540;

 L22717: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (general_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L22718;
    }
  goto L11540;

 L22718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22719;
    }
  goto L11540;

 L22719: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2248;  /* vec_setv4sf_0 */
    }
  goto L11540;

 L11541: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V4SFmode)
       || register_operand (operands[1], V4SFmode))))
    {
      return 1014;  /* *movv4sf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57079;

 L11612: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode)
    goto L61711;
  x1 = XEXP (x0, 0);
  goto L57097;

 L61711: ATTRIBUTE_UNUSED_LABEL
  tem = recog_96 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57097;

 L11864: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode)
    goto L61908;
  x1 = XEXP (x0, 0);
  goto L57118;

 L61908: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11865;
    case UNSPEC:
      goto L61911;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57118;

 L11865: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L61914;
  x1 = XEXP (x0, 0);
  goto L57118;

 L61914: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L61916;
    case VEC_SELECT:
      goto L22781;
    case REG:
    case SUBREG:
      goto L61913;
    default:
      x1 = XEXP (x0, 0);
      goto L57118;
   }
 L61913: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L11866;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L61916: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12081;
  x1 = XEXP (x0, 0);
  goto L57118;

 L12081: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12082;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L12082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12083;
  x1 = XEXP (x0, 0);
  goto L57118;

 L12083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12084;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L12084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1227 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1094;  /* avx512vl_storeups_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L22782;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22782: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22783;
  x1 = XEXP (x0, 0);
  goto L57118;

 L22783: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22784;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22784: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22785;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22785: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L22786;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22786: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_15_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L22787;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22787: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4SFmode))
    {
      operands[6] = x2;
      goto L22788;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L22789;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22789: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6660 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && ((INTVAL (operands[2]) % 4 == 0)
       && INTVAL (operands[2]) == (INTVAL (operands[3]) - 1)
       && INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[4]) == (INTVAL (operands[5]) - 1))
   && rtx_equal_p (operands[6], operands[0])))
    {
      return 2256;  /* avx512f_vextractf32x4_1_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L11866: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11867;
  x1 = XEXP (x0, 0);
  goto L57118;

 L11867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11868;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L11868: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1062;  /* avx512vl_storev4sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L61911: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L61917;
  x1 = XEXP (x0, 0);
  goto L57118;

 L61917: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12044;
    case 103LL:
      goto L12449;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L12044: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L12045;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L12045: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1088;  /* sse_storeups */
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L12449: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L12450;
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L12450: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1151;  /* sse_movntv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L57118;

 L22853: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode)
    goto L61919;
  x1 = XEXP (x0, 0);
  goto L57125;

 L61919: ATTRIBUTE_UNUSED_LABEL
  tem = recog_99 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57125;

 L23312: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode)
    goto L62086;
  goto ret0;

 L62086: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L23313;
    case UNSPEC:
      goto L62089;
    default:
     break;
   }
  goto ret0;

 L23313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L23314;
  goto ret0;

 L23314: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L23315;
    }
  goto ret0;

 L23315: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23316;
  goto ret0;

 L23316: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62091;
  goto ret0;

 L62091: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 0LL:
        goto L23317;
      case 4LL:
        goto L23343;
      default:
        break;
      }
  goto ret0;

 L23317: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23318;
  goto ret0;

 L23318: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23319;
  goto ret0;

 L23319: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23320;
  goto ret0;

 L23320: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L23321;
    }
  goto ret0;

 L23321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23322;
    }
  goto ret0;

 L23322: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7084 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL && TARGET_AVX512F
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2301;  /* vec_extract_lo_v8sf_maskm */
    }
  goto ret0;

 L23343: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23344;
  goto ret0;

 L23344: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23345;
  goto ret0;

 L23345: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23346;
  goto ret0;

 L23346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L23347;
    }
  goto ret0;

 L23347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L23348;
    }
  goto ret0;

 L23348: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7102 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && TARGET_AVX512VL
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2303;  /* vec_extract_hi_v8sf_maskm */
    }
  goto ret0;

 L62089: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 3)
    goto L62093;
  goto ret0;

 L62093: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44046;
    case 165LL:
      goto L50550;
    default:
      break;
    }
  goto ret0;

 L44046: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44047;
    }
  goto ret0;

 L44047: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L44048;
    }
  goto ret0;

 L44048: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4235;  /* avx_maskstoreps */
    }
  goto ret0;

 L50550: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L50551;
    }
  goto ret0;

 L50551: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50552;
  goto ret0;

 L50552: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50553;
    }
  goto ret0;

 L50553: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4566;  /* avx512vl_compressstorev4sf_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_101 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L62227;
    case 2:
      goto L62230;
    case 3:
      goto L62231;
    case 4:
      goto L62234;
    default:
      break;
    }
  goto ret0;

 L62227: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12001;
    case 155LL:
      goto L13534;
    case 156LL:
      goto L13788;
    case 160LL:
      goto L24290;
    case 172LL:
      goto L39570;
    case 173LL:
      goto L39634;
    case 174LL:
      goto L39734;
    default:
      break;
    }
  goto ret0;

 L12001: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12002;
    }
  goto ret0;

 L12002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L12003;
    }
  goto ret0;

 L12003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12004;
    }
  goto ret0;

 L12004: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1081;  /* *avx512f_loadupd512_mask */
    }
  goto ret0;

 L13534: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13535;
    }
  goto ret0;

 L13535: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L13536;
    }
  goto ret0;

 L13536: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13537;
    }
  goto ret0;

 L13537: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1278;  /* rcp14v8df_mask */
    }
  goto ret0;

 L13788: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13789;
    }
  goto ret0;

 L13789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L13790;
    }
  goto ret0;

 L13790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13791;
    }
  goto ret0;

 L13791: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1314;  /* rsqrt14v8df_mask */
    }
  goto ret0;

 L24290: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L24291;
    }
  goto ret0;

 L24291: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L24292;
    }
  goto ret0;

 L24292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L24293;
    }
  goto ret0;

 L24293: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2388;  /* avx512f_getexpv8df_mask */
    }
  goto ret0;

 L39570: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L39571;
    }
  goto ret0;

 L39571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L39572;
    }
  goto ret0;

 L39572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L39573;
    }
  goto ret0;

 L39573: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3737;  /* avx512er_exp2v8df_mask */
    }
  goto ret0;

 L39634: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L39635;
    }
  goto ret0;

 L39635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L39636;
    }
  goto ret0;

 L39636: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L39637;
    }
  goto ret0;

 L39637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3745;  /* avx512er_rcp28v8df_mask */
    }
  goto ret0;

 L39734: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L39735;
    }
  goto ret0;

 L39735: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L39736;
    }
  goto ret0;

 L39736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L39737;
    }
  goto ret0;

 L39737: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3757;  /* avx512er_rsqrt28v8df_mask */
    }
  goto ret0;

 L62230: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 188LL:
      goto L15174;
    case 158LL:
      goto L23908;
    case 82LL:
      goto L25224;
    case 143LL:
      goto L41222;
    case 136LL:
      goto L42624;
    case 161LL:
      goto L51069;
    default:
      break;
    }
  goto ret0;

 L15174: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L15175;
    }
  goto ret0;

 L15175: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L15176;
    }
  goto ret0;

 L15176: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L15177;
    }
  goto ret0;

 L15177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15178;
    }
  goto ret0;

 L15178: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 1443;  /* reducepv8df_mask */
    }
  goto ret0;

 L23908: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L23909;
    }
  goto ret0;

 L23909: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L23910;
    }
  goto ret0;

 L23910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L23911;
    }
  goto ret0;

 L23911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23912;
    }
  goto ret0;

 L23912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2346;  /* avx512f_scalefv8df_mask */
    }
  goto ret0;

 L25224: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L25225;
    }
  goto ret0;

 L25225: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25226;
    }
  goto ret0;

 L25226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L25227;
    }
  goto ret0;

 L25227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25228;
    }
  goto ret0;

 L25228: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2476;  /* avx512f_rndscalev8df_mask */
    }
  goto ret0;

 L41222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L41223;
    }
  goto ret0;

 L41223: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L41224;
    }
  goto ret0;

 L41224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L41225;
    }
  goto ret0;

 L41225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41226;
    }
  goto ret0;

 L41226: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 538 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3894;  /* avx512f_permvarv8df_mask */
    }
  goto ret0;

 L42624: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L42625;
    }
  goto ret0;

 L42625: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L42626;
    }
  goto ret0;

 L42626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L42627;
    }
  goto ret0;

 L42627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L42628;
    }
  goto ret0;

 L42628: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4082;  /* avx512f_vpermilvarv8df3_mask */
    }
  goto ret0;

 L51069: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L51070;
    }
  goto ret0;

 L51070: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51071;
    }
  goto ret0;

 L51071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L51072;
    }
  goto ret0;

 L51072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51073;
    }
  goto ret0;

 L51073: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4629;  /* avx512f_getmantv8df_mask */
    }
  goto ret0;

 L62231: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 123LL:
      goto L18729;
    case 147LL:
      goto L42721;
    case 149LL:
      goto L42999;
    case 148LL:
      goto L43207;
    case 190LL:
      goto L50747;
    default:
      break;
    }
  goto ret0;

 L18729: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L62246;
  goto ret0;

 L62246: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L18730;
    }
 L62247: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L18856;
    }
  goto ret0;

 L18730: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L18731;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L18731: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L62249;
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L62249: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19214;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L18732;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L19214: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L19215;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L19215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L19216;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L19216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L19217;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L19217: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1864;  /* fma_fmsubadd_v8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L18732: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L18733;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L18733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18734;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L18734: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1818;  /* fma_fmaddsub_v8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62247;

 L18856: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L18857;
    }
  goto ret0;

 L18857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L62252;
  goto ret0;

 L62252: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19352;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L18858;
    }
 L62251: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L18996;
    }
  goto ret0;

 L19352: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8DFmode)
    goto L62253;
  goto ret0;

 L62253: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L19353;
    }
 L62254: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L19503;
    }
  goto ret0;

 L19353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19354;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62254;

 L19354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19355;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62254;

 L19355: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1876;  /* avx512f_fmsubadd_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62254;

 L19503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19504;
  goto ret0;

 L19504: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19505;
    }
  goto ret0;

 L19505: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1888;  /* avx512f_fmsubadd_v8df_mask3 */
    }
  goto ret0;

 L18858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18859;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62251;

 L18859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18860;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62251;

 L18860: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1830;  /* avx512f_fmaddsub_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62251;

 L18996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18997;
  goto ret0;

 L18997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18998;
    }
  goto ret0;

 L18998: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1842;  /* avx512f_fmaddsub_v8df_mask3 */
    }
  goto ret0;

 L42721: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L42722;
    }
  goto ret0;

 L42722: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L42723;
    }
  goto ret0;

 L42723: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L42724;
    }
  goto ret0;

 L42724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L42725;
    }
  goto ret0;

 L42725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42726;
    }
  goto ret0;

 L42726: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4094;  /* avx512f_vpermi2varv8df3_maskz_1 */
    }
  goto ret0;

 L42999: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L43000;
    }
  goto ret0;

 L43000: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L43001;
    }
  goto ret0;

 L43001: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L43002;
    }
  goto ret0;

 L43002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43003;
  goto ret0;

 L43003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43004;
    }
  goto ret0;

 L43004: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4126;  /* avx512f_vpermi2varv8df3_mask */
    }
  goto ret0;

 L43207: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L43208;
    }
  goto ret0;

 L43208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L43209;
    }
  goto ret0;

 L43209: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L43210;
    }
  goto ret0;

 L43210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L43211;
    }
 L43488: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43489;
  goto ret0;

 L43211: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43212;
    }
  x2 = XEXP (x1, 1);
  goto L43488;

 L43212: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4148;  /* avx512f_vpermt2varv8df3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43488;

 L43489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43490;
    }
  goto ret0;

 L43490: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4180;  /* avx512f_vpermt2varv8df3_mask */
    }
  goto ret0;

 L50747: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L50748;
    }
  goto ret0;

 L50748: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L50749;
    }
  goto ret0;

 L50749: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50750;
    }
  goto ret0;

 L50750: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L50751;
    }
  goto ret0;

 L50751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L50752;
    }
  goto ret0;

 L50752: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1)))
    {
      return 4591;  /* avx512dq_rangepv8df_mask */
    }
  goto ret0;

 L62234: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24666;
  goto ret0;

 L24666: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L24667;
    }
  goto ret0;

 L24667: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L24668;
    }
  goto ret0;

 L24668: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L24669;
    }
  goto ret0;

 L24669: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24670;
    }
  goto ret0;

 L24670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[5] = x2;
      goto L24671;
    }
 L24858: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24859;
  goto ret0;

 L24671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24672;
    }
  x2 = XEXP (x1, 1);
  goto L24858;

 L24672: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2428;  /* avx512f_fixupimmv8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24858;

 L24859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24860;
    }
  goto ret0;

 L24860: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2444;  /* avx512f_fixupimmv8df_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_102 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L62208;
    case PLUS:
      goto L12764;
    case MINUS:
      goto L12800;
    case MULT:
      goto L13168;
    case DIV:
      goto L13422;
    case SQRT:
      goto L13653;
    case SMAX:
      goto L14074;
    case SMIN:
      goto L14110;
    case AND:
      goto L16229;
    case IOR:
      goto L16485;
    case XOR:
      goto L16500;
    case FMA:
      goto L16731;
    case FLOAT:
      goto L20628;
    case UNSIGNED_FLOAT:
      goto L20694;
    case FLOAT_EXTEND:
      goto L21862;
    case VEC_SELECT:
      goto L23596;
    case VEC_MERGE:
      goto L34548;
    case VEC_CONCAT:
      goto L34763;
    case VEC_DUPLICATE:
      goto L41654;
    case REG:
    case SUBREG:
    case MEM:
      goto L62168;
    default:
      goto L62169;
   }
 L62168: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L11621;
    }
 L62169: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L11747;
    }
 L62194: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L34540;
    }
  goto ret0;

 L62208: ATTRIBUTE_UNUSED_LABEL
  return recog_101 (x0, insn, pnum_clobbers);

 L12764: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12765;
    }
  goto ret0;

 L12765: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L12766;
    }
  goto ret0;

 L12766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L12767;
    }
  goto ret0;

 L12767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12768;
    }
  goto ret0;

 L12768: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands) && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1190;  /* *addv8df3_mask */
    }
  goto ret0;

 L12800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12801;
    }
  goto ret0;

 L12801: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L12802;
    }
  goto ret0;

 L12802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L12803;
    }
  goto ret0;

 L12803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12804;
    }
  goto ret0;

 L12804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands) && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1194;  /* *subv8df3_mask */
    }
  goto ret0;

 L13168: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13169;
    }
  goto ret0;

 L13169: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L13170;
    }
  goto ret0;

 L13170: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L13171;
    }
  goto ret0;

 L13171: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13172;
    }
  goto ret0;

 L13172: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands) && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1234;  /* *mulv8df3_mask */
    }
  goto ret0;

 L13422: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13423;
    }
  goto ret0;

 L13423: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L13424;
    }
  goto ret0;

 L13424: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L13425;
    }
  goto ret0;

 L13425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13426;
    }
  goto ret0;

 L13426: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1262;  /* avx512f_divv8df3_mask */
    }
  goto ret0;

 L13653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13654;
    }
  goto ret0;

 L13654: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L13655;
    }
  goto ret0;

 L13655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13656;
    }
  goto ret0;

 L13656: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1295;  /* avx512f_sqrtv8df2_mask */
    }
  goto ret0;

 L14074: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L62255;
  goto ret0;

 L62255: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L14075;
    }
 L62256: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L14423;
    }
  goto ret0;

 L14075: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L14076;
    }
  x3 = XEXP (x2, 0);
  goto L62256;

 L14076: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L14077;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62256;

 L14077: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14078;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62256;

 L14078: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8DFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1348;  /* *smaxv8df3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62256;

 L14423: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L14424;
    }
  goto ret0;

 L14424: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L14425;
    }
  goto ret0;

 L14425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14426;
    }
  goto ret0;

 L14426: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1388;  /* *smaxv8df3_mask */
    }
  goto ret0;

 L14110: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L62257;
  goto ret0;

 L62257: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L14111;
    }
 L62258: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L14459;
    }
  goto ret0;

 L14111: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L14112;
    }
  x3 = XEXP (x2, 0);
  goto L62258;

 L14112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L14113;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62258;

 L14113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14114;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62258;

 L14114: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8DFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1352;  /* *sminv8df3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62258;

 L14459: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L14460;
    }
  goto ret0;

 L14460: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L14461;
    }
  goto ret0;

 L14461: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14462;
    }
  goto ret0;

 L14462: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1392;  /* *sminv8df3_mask */
    }
  goto ret0;

 L16229: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L62259;
  goto ret0;

 L62259: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L16230;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16471;
    }
  goto ret0;

 L16230: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L16231;
    }
  goto ret0;

 L16231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16232;
    }
  goto ret0;

 L16232: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L16233;
    }
  goto ret0;

 L16233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16234;
    }
  goto ret0;

 L16234: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1567;  /* avx512f_andnotv8df3_mask */
    }
  goto ret0;

 L16471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16472;
    }
  goto ret0;

 L16472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L16473;
    }
  goto ret0;

 L16473: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16474;
    }
  goto ret0;

 L16474: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (AND, V8DFmode, operands))))
    {
      return 1599;  /* *andv8df3_mask */
    }
  goto ret0;

 L16485: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16486;
    }
  goto ret0;

 L16486: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16487;
    }
  goto ret0;

 L16487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L16488;
    }
  goto ret0;

 L16488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16489;
    }
  goto ret0;

 L16489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (IOR, V8DFmode, operands))))
    {
      return 1601;  /* *iorv8df3_mask */
    }
  goto ret0;

 L16500: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16501;
    }
  goto ret0;

 L16501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16502;
    }
  goto ret0;

 L16502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L16503;
    }
  goto ret0;

 L16503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16504;
    }
  goto ret0;

 L16504: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (XOR, V8DFmode, operands))))
    {
      return 1603;  /* *xorv8df3_mask */
    }
  goto ret0;

 L16731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L62263;
  goto ret0;

 L62263: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17650;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16732;
    }
 L62262: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16832;
    }
  goto ret0;

 L17650: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8DFmode)
    goto L62264;
  goto ret0;

 L62264: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L17651;
    }
 L62265: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L17761;
    }
  goto ret0;

 L17651: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L17652;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L17652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L62267;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L62267: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18267;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L17653;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L18267: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L18268;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L18268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L18269;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L18269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18270;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L18270: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1776;  /* fma_fnmsub_v8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L17653: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L17654;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L17654: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17655;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L17655: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1722;  /* fma_fnmadd_v8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62265;

 L17761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L17762;
    }
  goto ret0;

 L17762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L62270;
  goto ret0;

 L62270: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18387;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L17763;
    }
 L62269: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L17857;
    }
  goto ret0;

 L18387: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8DFmode)
    goto L62271;
  goto ret0;

 L62271: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L18388;
    }
 L62272: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L18520;
    }
  goto ret0;

 L18388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18389;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62272;

 L18389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18390;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62272;

 L18390: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1786;  /* avx512f_fnmsub_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62272;

 L18520: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18521;
  goto ret0;

 L18521: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18522;
    }
  goto ret0;

 L18522: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1796;  /* avx512f_fnmsub_v8df_mask3 */
    }
  goto ret0;

 L17763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17764;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62269;

 L17764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17765;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62269;

 L17765: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1732;  /* avx512f_fnmadd_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62269;

 L17857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17858;
  goto ret0;

 L17858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17859;
    }
  goto ret0;

 L17859: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1740;  /* avx512f_fnmadd_v8df_mask3 */
    }
  goto ret0;

 L16732: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16733;
    }
  x3 = XEXP (x2, 0);
  goto L62262;

 L16733: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L62274;
  x3 = XEXP (x2, 0);
  goto L62262;

 L62274: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17180;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L16734;
    }
  x3 = XEXP (x2, 0);
  goto L62262;

 L17180: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17181;
    }
  x3 = XEXP (x2, 0);
  goto L62262;

 L17181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L17182;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62262;

 L17182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17183;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62262;

 L17183: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1678;  /* fma_fmsub_v8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62262;

 L16734: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L16735;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62262;

 L16735: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L16736;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62262;

 L16736: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
    {
      return 1634;  /* fma_fmadd_v8df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62262;

 L16832: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16833;
    }
  goto ret0;

 L16833: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L62277;
  goto ret0;

 L62277: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17318;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L16834;
    }
 L62276: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L16946;
    }
  goto ret0;

 L17318: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8DFmode)
    goto L62278;
  goto ret0;

 L62278: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17319;
    }
 L62279: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17441;
    }
  goto ret0;

 L17319: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17320;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62279;

 L17320: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17321;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62279;

 L17321: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1690;  /* avx512f_fmsub_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62279;

 L17441: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17442;
  goto ret0;

 L17442: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17443;
    }
  goto ret0;

 L17443: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1700;  /* avx512f_fmsub_v8df_mask3 */
    }
  goto ret0;

 L16834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L16835;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62276;

 L16835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16836;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62276;

 L16836: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1644;  /* avx512f_fmadd_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62276;

 L16946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L16947;
  goto ret0;

 L16947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16948;
    }
  goto ret0;

 L16948: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1654;  /* avx512f_fmadd_v8df_mask3 */
    }
  goto ret0;

 L20628: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L62280;
    case V8DImode:
      goto L62281;
    default:
      break;
    }
  goto ret0;

 L62280: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L20629;
    }
  goto ret0;

 L20629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L20630;
    }
  goto ret0;

 L20630: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20631;
    }
  goto ret0;

 L20631: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4477 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL)) && 
#line 244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2017;  /* floatv8siv8df2_mask */
    }
  goto ret0;

 L62281: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20663;
    }
  goto ret0;

 L20663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L20664;
    }
  goto ret0;

 L20664: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20665;
    }
  goto ret0;

 L20665: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 2022;  /* floatv8div8df2_mask */
    }
  goto ret0;

 L20694: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L62282;
    case V8SImode:
      goto L62283;
    default:
      break;
    }
  goto ret0;

 L62282: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20695;
    }
  goto ret0;

 L20695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L20696;
    }
  goto ret0;

 L20696: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20697;
    }
  goto ret0;

 L20697: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 2026;  /* ufloatv8div8df2_mask */
    }
  goto ret0;

 L62283: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L20983;
    }
  goto ret0;

 L20983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L20984;
    }
  goto ret0;

 L20984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20985;
    }
  goto ret0;

 L20985: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2061;  /* ufloatv8siv8df2_mask */
    }
  goto ret0;

 L21862: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21863;
    }
  goto ret0;

 L21863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L21864;
    }
  goto ret0;

 L21864: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21865;
    }
  goto ret0;

 L21865: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL) && 1) && 
#line 244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2171;  /* avx512f_cvtps2pd512_mask */
    }
  goto ret0;

 L23596: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V16DFmode:
      goto L62284;
    case V8DFmode:
      goto L62285;
    default:
      break;
    }
  goto ret0;

 L62284: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L23597;
  goto ret0;

 L23597: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8DFmode)
    goto L62286;
  goto ret0;

 L62286: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L23598;
    }
 L62287: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L25430;
    }
  goto ret0;

 L23598: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L23599;
    }
  x4 = XEXP (x3, 0);
  goto L62287;

 L23599: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L23600;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23600: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62288;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L62288: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L23601;
      case 0LL:
        goto L23683;
      default:
        break;
      }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23601: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23602;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23602: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23603;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23603: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23604;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23604: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23605;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23605: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23606;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23606: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23607;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23607: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L23608;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L23609;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23609: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23610;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23610: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2317;  /* avx512f_unpckhpd512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23683: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23684;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23684: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23685;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23685: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23686;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23686: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23687;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23687: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23688;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23688: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23689;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23689: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23690;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L23691;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23692;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L23692: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2323;  /* *avx512f_unpcklpd512_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62287;

 L25430: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L25431;
    }
  goto ret0;

 L25431: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L25432;
  goto ret0;

 L25432: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62290;
  goto ret0;

 L62290: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_1_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L25433;
    }
 L62291: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L34931;
    }
  goto ret0;

 L25433: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_8_to_9_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L25434;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25434: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_2_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L25435;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25435: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_10_to_11_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L25436;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25436: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_4_to_5_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L25437;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25437: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_12_to_13_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L25438;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25438: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_6_to_7_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L25439;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25439: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_14_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L25440;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[11] = x2;
      goto L25441;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25441: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[12] = x2;
      goto L25442;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L25442: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2493;  /* avx512f_shufpd512_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62291;

 L34931: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L34932;
    }
  goto ret0;

 L34932: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L34933;
    }
  goto ret0;

 L34933: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L34934;
    }
  goto ret0;

 L34934: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[7] = x4;
      goto L34935;
    }
  goto ret0;

 L34935: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[8] = x4;
      goto L34936;
    }
  goto ret0;

 L34936: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[9] = x4;
      goto L34937;
    }
  goto ret0;

 L34937: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (const_8_to_15_operand (x4, VOIDmode))
    {
      operands[10] = x4;
      goto L34938;
    }
  goto ret0;

 L34938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[11] = x2;
      goto L34939;
    }
  goto ret0;

 L34939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[12] = x2;
      goto L34940;
    }
  goto ret0;

 L34940: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11883 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[9]) == (INTVAL (operands[10]) - 1)))))
    {
      return 3406;  /* avx512f_shuf_f64x2_1_mask */
    }
  goto ret0;

 L62285: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L41431;
    }
  goto ret0;

 L41431: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL)
    goto L62292;
  goto ret0;

 L62292: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 4)
    goto L41432;
 L62293: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) >= 1)
    {
      operands[2] = x3;
      goto L42531;
    }
  goto ret0;

 L41432: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L41433;
    }
  goto L62293;

 L41433: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L41434;
    }
  goto L62293;

 L41434: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L41435;
    }
  goto L62293;

 L41435: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L41436;
    }
  goto L62293;

 L41436: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[6] = x2;
      goto L41437;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L62293;

 L41437: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L41438;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L62293;

 L41438: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
#line 534 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 3918;  /* avx512f_permv8df_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L62293;

 L42531: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L42532;
    }
  goto ret0;

 L42532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L42533;
    }
  goto ret0;

 L42533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42534;
    }
  goto ret0;

 L42534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL)
   && avx_vpermilp_parallel (operands[2], V8DFmode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 4070;  /* *avx512f_vpermilpv8df_mask */
    }
  goto ret0;

 L34548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L34549;
    }
  goto ret0;

 L34549: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8DFmode
      && GET_CODE (x3) == VEC_DUPLICATE)
    goto L34550;
  goto ret0;

 L34550: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L34551;
    }
  goto ret0;

 L34551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L34552;
    }
  goto ret0;

 L34552: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[4] = x2;
      goto L34553;
    }
  goto ret0;

 L34553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L34554;
    }
  goto ret0;

 L34554: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 6597 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))))
    {
      return 3378;  /* avx512dq_vinsertf64x2_1_mask */
    }
  goto ret0;

 L34763: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L34764;
    }
  goto ret0;

 L34764: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L34765;
  goto ret0;

 L34765: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L34766;
    }
  goto ret0;

 L34766: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 4)
    goto L34767;
  goto ret0;

 L34767: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (GET_CODE (x5) == CONST_INT)
    goto L62294;
  goto ret0;

 L62294: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x5, 0) == XWINT (x5, 0))
    switch ((int) XWINT (x5, 0))
      {
      case 4LL:
        goto L34768;
      case 0LL:
        goto L34820;
      default:
        break;
      }
  goto ret0;

 L34768: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34769;
  goto ret0;

 L34769: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34770;
  goto ret0;

 L34770: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L34771;
  goto ret0;

 L34771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L34772;
    }
  goto ret0;

 L34772: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34773;
    }
  goto ret0;

 L34773: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3394;  /* vec_set_lo_v8df_mask */
    }
  goto ret0;

 L34820: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34821;
  goto ret0;

 L34821: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34822;
  goto ret0;

 L34822: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L34823;
  goto ret0;

 L34823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L34824;
    }
  goto ret0;

 L34824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L34825;
    }
  goto ret0;

 L34825: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3398;  /* vec_set_hi_v8df_mask */
    }
  goto ret0;

 L41654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case DFmode:
      goto L62296;
    case V4DFmode:
      goto L62297;
    case V2DFmode:
      goto L62299;
    default:
      break;
    }
  goto ret0;

 L62296: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41655;
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L42062;
    }
  goto ret0;

 L41655: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L41656;
    }
  goto ret0;

 L41656: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41657;
  goto ret0;

 L41657: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41658;
  goto ret0;

 L41658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L41659;
    }
  goto ret0;

 L41659: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41660;
    }
  goto ret0;

 L41660: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3944;  /* avx512f_vec_dupv8df_mask */
    }
  goto ret0;

 L42062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L42063;
    }
  goto ret0;

 L42063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42064;
    }
  goto ret0;

 L42064: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4000;  /* avx512f_vec_dup_gprv8df_mask */
    }
  goto ret0;

 L62297: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L41841;
    }
  goto ret0;

 L41841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L41842;
    }
  goto ret0;

 L41842: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41843;
    }
  goto ret0;

 L41843: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3966;  /* avx512f_broadcastv8df_mask */
    }
  goto ret0;

 L62299: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L42381;
    }
  goto ret0;

 L42381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L42382;
    }
  goto ret0;

 L42382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42383;
    }
  goto ret0;

 L42383: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4049;  /* avx512dq_broadcastv8df_mask_1 */
    }
  goto ret0;

 L11621: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L11622;
    }
  x2 = XEXP (x1, 0);
  goto L62169;

 L11622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11623;
    }
  x2 = XEXP (x1, 0);
  goto L62169;

 L11623: ATTRIBUTE_UNUSED_LABEL
  if (
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1027;  /* avx512f_loadv8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62169;

 L11747: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L11748;
    }
  x2 = XEXP (x1, 0);
  goto L62194;

 L11748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11749;
    }
  x2 = XEXP (x1, 0);
  goto L62194;

 L11749: ATTRIBUTE_UNUSED_LABEL
  if (
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1045;  /* avx512f_blendmv8df */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62194;

 L34540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DFmode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L34541;
  goto ret0;

 L34541: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L34542;
    }
  goto ret0;

 L34542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L34543;
    }
  goto ret0;

 L34543: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11690 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 6597 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 3377;  /* *avx512dq_vinsertf64x2_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_103 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L62300;
    case 2:
      goto L62303;
    case 3:
      goto L62306;
    case 4:
      goto L62309;
    default:
      break;
    }
  goto ret0;

 L62300: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L11995;
    case 155LL:
      goto L13528;
    case 156LL:
      goto L13782;
    case 160LL:
      goto L24276;
    case 172LL:
      goto L39556;
    case 173LL:
      goto L39620;
    case 174LL:
      goto L39720;
    default:
      break;
    }
  goto ret0;

 L11995: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L11996;
    }
  goto ret0;

 L11996: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1080;  /* *avx512f_loadupd512 */
    }
  goto ret0;

 L13528: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L13529;
    }
  goto ret0;

 L13529: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1277;  /* *rcp14v8df */
    }
  goto ret0;

 L13782: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L13783;
    }
  goto ret0;

 L13783: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1313;  /* *rsqrt14v8df */
    }
  goto ret0;

 L24276: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L24277;
    }
  goto ret0;

 L24277: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2386;  /* avx512f_getexpv8df */
    }
  goto ret0;

 L39556: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L39557;
    }
  goto ret0;

 L39557: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3735;  /* avx512er_exp2v8df */
    }
  goto ret0;

 L39620: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L39621;
    }
  goto ret0;

 L39621: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3743;  /* *avx512er_rcp28v8df */
    }
  goto ret0;

 L39720: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L39721;
    }
  goto ret0;

 L39721: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))
    {
      return 3755;  /* *avx512er_rsqrt28v8df */
    }
  goto ret0;

 L62303: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 48LL:
      goto L14636;
    case 49LL:
      goto L14672;
    case 188LL:
      goto L15167;
    case 158LL:
      goto L23892;
    case 82LL:
      goto L25208;
    case 143LL:
      goto L41215;
    case 136LL:
      goto L42617;
    case 161LL:
      goto L51053;
    default:
      break;
    }
  goto ret0;

 L14636: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L14637;
    }
  goto ret0;

 L14637: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L14638;
    }
  goto ret0;

 L14638: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1413;  /* *ieee_sminv8df3 */
    }
  goto ret0;

 L14672: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L14673;
    }
  goto ret0;

 L14673: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L14674;
    }
  goto ret0;

 L14674: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1419;  /* *ieee_smaxv8df3 */
    }
  goto ret0;

 L15167: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L15168;
    }
  goto ret0;

 L15168: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L15169;
    }
  goto ret0;

 L15169: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 1442;  /* *reducepv8df */
    }
  goto ret0;

 L23892: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L23893;
    }
  goto ret0;

 L23893: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L23894;
    }
  goto ret0;

 L23894: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2344;  /* avx512f_scalefv8df */
    }
  goto ret0;

 L25208: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L25209;
    }
  goto ret0;

 L25209: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L25210;
    }
  goto ret0;

 L25210: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2474;  /* avx512f_rndscalev8df */
    }
  goto ret0;

 L41215: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L41216;
    }
  goto ret0;

 L41216: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L41217;
    }
  goto ret0;

 L41217: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 538 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3893;  /* avx512f_permvarv8df */
    }
  goto ret0;

 L42617: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L42618;
    }
  goto ret0;

 L42618: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L42619;
    }
  goto ret0;

 L42619: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4081;  /* avx512f_vpermilvarv8df3 */
    }
  goto ret0;

 L51053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L51054;
    }
  goto ret0;

 L51054: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L51055;
    }
  goto ret0;

 L51055: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4627;  /* avx512f_getmantv8df */
    }
  goto ret0;

 L62306: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 123LL:
      goto L18711;
    case 147LL:
      goto L42713;
    case 148LL:
      goto L43199;
    case 145LL:
      goto L47063;
    case 164LL:
      goto L50424;
    case 166LL:
      goto L50592;
    case 190LL:
      goto L50729;
    default:
      break;
    }
  goto ret0;

 L18711: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L18712;
    }
  goto ret0;

 L18712: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L18713;
    }
  goto ret0;

 L18713: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V8DFmode)
    goto L62324;
  goto ret0;

 L62324: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19194;
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L18714;
    }
  goto ret0;

 L19194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L19195;
    }
  goto ret0;

 L19195: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1862;  /* *fma_fmsubadd_v8df */
    }
  goto ret0;

 L18714: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1816;  /* *fma_fmaddsub_v8df */
    }
  goto ret0;

 L42713: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L42714;
    }
  goto ret0;

 L42714: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L42715;
    }
  goto ret0;

 L42715: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L42716;
    }
  goto ret0;

 L42716: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4093;  /* avx512f_vpermi2varv8df3 */
    }
  goto ret0;

 L43199: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L43200;
    }
  goto ret0;

 L43200: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L43201;
    }
  goto ret0;

 L43201: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L43202;
    }
  goto ret0;

 L43202: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4147;  /* avx512f_vpermt2varv8df3 */
    }
  goto ret0;

 L47063: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L47064;
    }
  if (GET_CODE (x2) == PC)
    goto L47664;
  goto ret0;

 L47064: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47065;
    }
  goto ret0;

 L47065: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[6] = x2;
      goto L47066;
    }
  goto ret0;

 L47066: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62325;
    case DImode:
      goto L62326;
    default:
      break;
    }
  goto ret0;

 L62325: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47067;
  goto ret0;

 L47067: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47068;
    }
  goto ret0;

 L47068: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L62327;
    case V8DImode:
      goto L62328;
    default:
      break;
    }
  goto ret0;

 L62327: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47069;
    }
  goto ret0;

 L47069: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47070;
    }
  goto ret0;

 L47070: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4407;  /* *avx512f_gathersiv8df */
    }
  goto ret0;

 L62328: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48269;
    }
  goto ret0;

 L48269: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48270;
    }
  goto ret0;

 L48270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4455;  /* *avx512f_gatherdiv8df */
    }
  goto ret0;

 L62326: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47092;
  goto ret0;

 L47092: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47093;
    }
  goto ret0;

 L47093: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L62329;
    case V8DImode:
      goto L62330;
    default:
      break;
    }
  goto ret0;

 L62329: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L47094;
    }
  goto ret0;

 L47094: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47095;
    }
  goto ret0;

 L47095: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4408;  /* *avx512f_gathersiv8df */
    }
  goto ret0;

 L62330: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L48294;
    }
  goto ret0;

 L48294: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48295;
    }
  goto ret0;

 L48295: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4456;  /* *avx512f_gatherdiv8df */
    }
  goto ret0;

 L47664: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47665;
    }
  goto ret0;

 L47665: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[5] = x2;
      goto L47666;
    }
  goto ret0;

 L47666: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62331;
    case DImode:
      goto L62332;
    default:
      break;
    }
  goto ret0;

 L62331: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47667;
  goto ret0;

 L47667: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47668;
    }
  goto ret0;

 L47668: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L62333;
    case V8DImode:
      goto L62334;
    default:
      break;
    }
  goto ret0;

 L62333: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47669;
    }
  goto ret0;

 L47669: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47670;
    }
  goto ret0;

 L47670: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4431;  /* *avx512f_gathersiv8df_2 */
    }
  goto ret0;

 L62334: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48869;
    }
  goto ret0;

 L48869: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48870;
    }
  goto ret0;

 L48870: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4479;  /* *avx512f_gatherdiv8df_2 */
    }
  goto ret0;

 L62332: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47692;
  goto ret0;

 L47692: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47693;
    }
  goto ret0;

 L47693: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L62335;
    case V8DImode:
      goto L62336;
    default:
      break;
    }
  goto ret0;

 L62335: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L47694;
    }
  goto ret0;

 L47694: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47695;
    }
  goto ret0;

 L47695: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4432;  /* *avx512f_gathersiv8df_2 */
    }
  goto ret0;

 L62336: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L48894;
    }
  goto ret0;

 L48894: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48895;
    }
  goto ret0;

 L48895: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4480;  /* *avx512f_gatherdiv8df_2 */
    }
  goto ret0;

 L50424: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L50425;
    }
  goto ret0;

 L50425: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L50426;
    }
  goto ret0;

 L50426: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50427;
    }
  goto ret0;

 L50427: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4548;  /* avx512f_compressv8df_mask */
    }
  goto ret0;

 L50592: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L50593;
    }
  goto ret0;

 L50593: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L50594;
    }
  goto ret0;

 L50594: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50595;
    }
  goto ret0;

 L50595: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4572;  /* avx512f_expandv8df_mask */
    }
  goto ret0;

 L50729: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L50730;
    }
  goto ret0;

 L50730: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L50731;
    }
  goto ret0;

 L50731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50732;
    }
  goto ret0;

 L50732: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1))
    {
      return 4589;  /* avx512dq_rangepv8df */
    }
  goto ret0;

 L62309: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 157)
    goto L24646;
  goto ret0;

 L24646: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L24647;
    }
  goto ret0;

 L24647: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L24648;
    }
  goto ret0;

 L24648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L24649;
    }
  goto ret0;

 L24649: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24650;
    }
  goto ret0;

 L24650: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2426;  /* avx512f_fixupimmv8df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_104 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11620;
    case UNSPEC:
      goto L62145;
    case PLUS:
      goto L12748;
    case MINUS:
      goto L12784;
    case MULT:
      goto L13152;
    case DIV:
      goto L13406;
    case SQRT:
      goto L13639;
    case SMAX:
      goto L14058;
    case SMIN:
      goto L14094;
    case AND:
      goto L16221;
    case IOR:
      goto L16478;
    case XOR:
      goto L16493;
    case FMA:
      goto L16713;
    case FLOAT:
      goto L20622;
    case UNSIGNED_FLOAT:
      goto L20680;
    case FLOAT_EXTEND:
      goto L21848;
    case VEC_DUPLICATE:
      goto L22684;
    case VEC_SELECT:
      goto L23580;
    case VEC_CONCAT:
      goto L34751;
    case IF_THEN_ELSE:
      goto L40107;
    default:
     break;
   }
  goto ret0;

 L11620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62170;
  goto ret0;

 L62170: ATTRIBUTE_UNUSED_LABEL
  return recog_102 (x0, insn, pnum_clobbers);

 L62145: ATTRIBUTE_UNUSED_LABEL
  return recog_103 (x0, insn, pnum_clobbers);

 L12748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L12749;
    }
  goto ret0;

 L12749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L12750;
    }
  goto ret0;

 L12750: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1188;  /* *addv8df3 */
    }
  goto ret0;

 L12784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L12785;
    }
  goto ret0;

 L12785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L12786;
    }
  goto ret0;

 L12786: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1192;  /* *subv8df3 */
    }
  goto ret0;

 L13152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L13153;
    }
  goto ret0;

 L13153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L13154;
    }
  goto ret0;

 L13154: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1232;  /* *mulv8df3 */
    }
  goto ret0;

 L13406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L13407;
    }
  goto ret0;

 L13407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L13408;
    }
  goto ret0;

 L13408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1260;  /* avx512f_divv8df3 */
    }
  goto ret0;

 L13639: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L13640;
    }
  goto ret0;

 L13640: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1293;  /* avx512f_sqrtv8df2 */
    }
  goto ret0;

 L14058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62337;
  goto ret0;

 L62337: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L14059;
    }
 L62338: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L14407;
    }
  goto ret0;

 L14059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L14060;
    }
  x2 = XEXP (x1, 0);
  goto L62338;

 L14060: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8DFmode, operands)
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1346;  /* *smaxv8df3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62338;

 L14407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L14408;
    }
  goto ret0;

 L14408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1386;  /* *smaxv8df3 */
    }
  goto ret0;

 L14094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62339;
  goto ret0;

 L62339: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L14095;
    }
 L62340: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L14443;
    }
  goto ret0;

 L14095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L14096;
    }
  x2 = XEXP (x1, 0);
  goto L62340;

 L14096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8DFmode, operands)
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1350;  /* *sminv8df3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62340;

 L14443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L14444;
    }
  goto ret0;

 L14444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1390;  /* *sminv8df3 */
    }
  goto ret0;

 L16221: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62341;
  goto ret0;

 L62341: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16222;
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L16464;
    }
  goto ret0;

 L16222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16223;
    }
  goto ret0;

 L16223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L16224;
    }
  goto ret0;

 L16224: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2769 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1566;  /* avx512f_andnotv8df3 */
    }
  goto ret0;

 L16464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L16465;
    }
  goto ret0;

 L16465: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (AND, V8DFmode, operands)))
    {
      return 1598;  /* *andv8df3 */
    }
  goto ret0;

 L16478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L16479;
    }
  goto ret0;

 L16479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L16480;
    }
  goto ret0;

 L16480: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (IOR, V8DFmode, operands)))
    {
      return 1600;  /* *iorv8df3 */
    }
  goto ret0;

 L16493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L16494;
    }
  goto ret0;

 L16494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L16495;
    }
  goto ret0;

 L16495: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2873 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (XOR, V8DFmode, operands)))
    {
      return 1602;  /* *xorv8df3 */
    }
  goto ret0;

 L16713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62344;
  goto ret0;

 L62344: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17630;
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L16714;
    }
  goto ret0;

 L17630: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L17631;
    }
  goto ret0;

 L17631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L17632;
    }
  goto ret0;

 L17632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V8DFmode)
    goto L62346;
  goto ret0;

 L62346: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L18245;
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L17633;
    }
  goto ret0;

 L18245: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L18246;
    }
  goto ret0;

 L18246: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1774;  /* *fma_fnmsub_v8df */
    }
  goto ret0;

 L17633: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1720;  /* *fma_fnmadd_v8df */
    }
  goto ret0;

 L16714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L16715;
    }
  goto ret0;

 L16715: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V8DFmode)
    goto L62348;
  goto ret0;

 L62348: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17160;
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L16716;
    }
  goto ret0;

 L17160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L17161;
    }
  goto ret0;

 L17161: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1676;  /* *fma_fmsub_v8df */
    }
  goto ret0;

 L16716: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1632;  /* *fma_fmadd_v8df */
    }
  goto ret0;

 L20622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L62351;
    case V8DImode:
      goto L62350;
    default:
      break;
    }
  goto ret0;

 L62351: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21023;
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L20623;
    }
  goto ret0;

 L21023: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L21024;
    }
  goto ret0;

 L21024: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L21025;
  goto ret0;

 L21025: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21026;
  goto ret0;

 L21026: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21027;
  goto ret0;

 L21027: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L21028;
  goto ret0;

 L21028: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L21029;
  goto ret0;

 L21029: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L21030;
  goto ret0;

 L21030: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L21031;
  goto ret0;

 L21031: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L21032;
  goto ret0;

 L21032: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 4575 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2066;  /* avx512f_cvtdq2pd512_2 */
    }
  goto ret0;

 L20623: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4477 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1) && 
#line 244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2016;  /* floatv8siv8df2 */
    }
  goto ret0;

 L62350: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L20649;
    }
  goto ret0;

 L20649: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 2020;  /* floatv8div8df2 */
    }
  goto ret0;

 L20680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DImode:
      goto L62352;
    case V8SImode:
      goto L62353;
    default:
      break;
    }
  goto ret0;

 L62352: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L20681;
    }
  goto ret0;

 L20681: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 2024;  /* ufloatv8div8df2 */
    }
  goto ret0;

 L62353: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L20977;
    }
  goto ret0;

 L20977: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2060;  /* ufloatv8siv8df2 */
    }
  goto ret0;

 L21848: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8SFmode)
    goto L62355;
  goto ret0;

 L62355: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21904;
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L21849;
    }
  goto ret0;

 L21904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L21905;
    }
  goto ret0;

 L21905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 8)
    goto L21906;
  goto ret0;

 L21906: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21907;
  goto ret0;

 L21907: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21908;
  goto ret0;

 L21908: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L21909;
  goto ret0;

 L21909: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L21910;
  goto ret0;

 L21910: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 4);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L21911;
  goto ret0;

 L21911: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 5);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L21912;
  goto ret0;

 L21912: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 6);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L21913;
  goto ret0;

 L21913: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 7);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 4974 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2176;  /* vec_unpacks_lo_v16sf */
    }
  goto ret0;

 L21849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && 1) && 
#line 244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 2169;  /* avx512f_cvtps2pd512 */
    }
  goto ret0;

 L22684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DFmode:
      goto L62356;
    case V4DFmode:
      goto L62357;
    case V2DFmode:
      goto L62359;
    default:
      break;
    }
  goto ret0;

 L62356: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L22685;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L42056;
    }
  goto ret0;

 L22685: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L62360;
    case V2DFmode:
      goto L62361;
    default:
      break;
    }
  goto ret0;

 L62360: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L22686;
    }
  goto ret0;

 L22686: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L22687;
  goto ret0;

 L22687: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 6316 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2243;  /* avx512f_vec_dupv8df_1 */
    }
  goto ret0;

 L62361: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L41648;
    }
  goto ret0;

 L41648: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41649;
  goto ret0;

 L41649: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3943;  /* avx512f_vec_dupv8df */
    }
  goto ret0;

 L42056: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3999;  /* *avx512f_vec_dup_gprv8df */
    }
  goto ret0;

 L62357: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L41835;
    }
  goto ret0;

 L41835: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3965;  /* *avx512f_broadcastv8df */
    }
  goto ret0;

 L62359: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L42375;
    }
  goto ret0;

 L42375: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4048;  /* *avx512dq_broadcastv8df_1 */
    }
  goto ret0;

 L23580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V16DFmode:
      goto L62362;
    case V8DFmode:
      goto L62363;
    default:
      break;
    }
  goto ret0;

 L62362: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L23581;
  goto ret0;

 L23581: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L62364;
  goto ret0;

 L62364: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L23582;
    }
 L62365: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L25413;
    }
  goto ret0;

 L23582: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L23583;
    }
  x3 = XEXP (x2, 0);
  goto L62365;

 L23583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L23584;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23584: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L62366;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L62366: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L23585;
      case 0LL:
        goto L23667;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23585: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23586;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23586: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23587;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23587: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23588;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23588: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23589;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23589: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23590;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23590: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23591;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23591: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 7354 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2316;  /* *avx512f_unpckhpd512 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23667: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23668;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23668: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23669;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23669: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23670;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23670: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23671;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23671: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23672;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23672: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23673;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L23673: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)]
      && 
#line 7491 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2322;  /* *avx512f_unpcklpd512 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62365;

 L25413: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L25414;
    }
  goto ret0;

 L25414: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L25415;
  goto ret0;

 L25415: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L62368;
  goto ret0;

 L62368: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_1_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L25416;
    }
 L62369: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L34914;
    }
  goto ret0;

 L25416: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_8_to_9_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L25417;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25417: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_2_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L25418;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25418: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_10_to_11_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L25419;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25419: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_4_to_5_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L25420;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_12_to_13_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L25421;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_6_to_7_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L25422;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25422: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_14_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L25423;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L25423: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7997 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2492;  /* avx512f_shufpd512_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L62369;

 L34914: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L34915;
    }
  goto ret0;

 L34915: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L34916;
    }
  goto ret0;

 L34916: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L34917;
    }
  goto ret0;

 L34917: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[7] = x3;
      goto L34918;
    }
  goto ret0;

 L34918: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[8] = x3;
      goto L34919;
    }
  goto ret0;

 L34919: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[9] = x3;
      goto L34920;
    }
  goto ret0;

 L34920: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (const_8_to_15_operand (x3, VOIDmode))
    {
      operands[10] = x3;
      goto L34921;
    }
  goto ret0;

 L34921: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11883 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1)
       && INTVAL (operands[7]) == (INTVAL (operands[8]) - 1)
       && INTVAL (operands[9]) == (INTVAL (operands[10]) - 1))))
    {
      return 3405;  /* avx512f_shuf_f64x2_1 */
    }
  goto ret0;

 L62363: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L41420;
    }
  goto ret0;

 L41420: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L62370;
  goto ret0;

 L62370: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4)
    goto L41421;
 L62371: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[2] = x2;
      goto L42523;
    }
  goto ret0;

 L41421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L41422;
    }
  goto L62371;

 L41422: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L41423;
    }
  goto L62371;

 L41423: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L41424;
    }
  goto L62371;

 L41424: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L41425;
    }
  goto L62371;

 L41425: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 534 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3917;  /* avx512f_permv8df_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L62371;

 L42523: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42524;
    }
  goto ret0;

 L42524: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1
   && avx_vpermilp_parallel (operands[2], V8DFmode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4069;  /* *avx512f_vpermilpv8df */
    }
  goto ret0;

 L34751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62372;
  goto ret0;

 L62372: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L34752;
    }
 L62373: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L44581;
    }
  goto ret0;

 L34752: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L34753;
  x2 = XEXP (x1, 0);
  goto L62373;

 L34753: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L34754;
    }
  x2 = XEXP (x1, 0);
  goto L62373;

 L34754: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L34755;
  x2 = XEXP (x1, 0);
  goto L62373;

 L34755: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62374;
  x2 = XEXP (x1, 0);
  goto L62373;

 L62374: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 4LL:
        goto L34756;
      case 0LL:
        goto L34808;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  goto L62373;

 L34756: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L34757;
  x2 = XEXP (x1, 0);
  goto L62373;

 L34757: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L34758;
  x2 = XEXP (x1, 0);
  goto L62373;

 L34758: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 11778 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3393;  /* vec_set_lo_v8df */
    }
  x2 = XEXP (x1, 0);
  goto L62373;

 L34808: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L34809;
  x2 = XEXP (x1, 0);
  goto L62373;

 L34809: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L34810;
  x2 = XEXP (x1, 0);
  goto L62373;

 L34810: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 11793 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3397;  /* vec_set_hi_v8df */
    }
  x2 = XEXP (x1, 0);
  goto L62373;

 L44581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L44582;
    }
  goto ret0;

 L44582: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 212 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 4311;  /* avx_vec_concatv8df */
    }
  goto ret0;

 L40107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L40108;
    }
  goto ret0;

 L40108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L40109;
    }
  goto ret0;

 L40109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L40110;
    }
  goto ret0;

 L40110: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 195 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 3788;  /* xop_pcmov_v8df512 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_105 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L62453;
    case PLUS:
      goto L12836;
    case MINUS:
      goto L12872;
    case MULT:
      goto L13204;
    case DIV:
      goto L13449;
    case SQRT:
      goto L13677;
    case SMAX:
      goto L14146;
    case SMIN:
      goto L14182;
    case AND:
      goto L16178;
    case IOR:
      goto L16350;
    case XOR:
      goto L16365;
    case FMA:
      goto L16761;
    case FLOAT:
      goto L20641;
    case UNSIGNED_FLOAT:
      goto L20758;
    case FLOAT_EXTEND:
      goto L21886;
    case REG:
    case SUBREG:
    case MEM:
      goto L62432;
    default:
      goto L62433;
   }
 L62432: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L11628;
    }
 L62433: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L11754;
    }
  goto ret0;

 L62453: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L62458;
    case 2:
      goto L62461;
    case 3:
      goto L62462;
    default:
      break;
    }
  goto ret0;

 L62458: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12014;
    case 155LL:
      goto L13547;
    case 156LL:
      goto L13801;
    default:
      break;
    }
  goto ret0;

 L12014: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12015;
    }
  goto ret0;

 L12015: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L12016;
    }
  goto ret0;

 L12016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12017;
    }
  goto ret0;

 L12017: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1083;  /* *avx_loadupd256_mask */
    }
  goto ret0;

 L13547: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L13548;
    }
  goto ret0;

 L13548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L13549;
    }
  goto ret0;

 L13549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13550;
    }
  goto ret0;

 L13550: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1280;  /* rcp14v4df_mask */
    }
  goto ret0;

 L13801: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L13802;
    }
  goto ret0;

 L13802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L13803;
    }
  goto ret0;

 L13803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13804;
    }
  goto ret0;

 L13804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1316;  /* rsqrt14v4df_mask */
    }
  goto ret0;

 L62461: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 188)
    goto L15189;
  goto ret0;

 L15189: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L15190;
    }
  goto ret0;

 L15190: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L15191;
    }
  goto ret0;

 L15191: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L15192;
    }
  goto ret0;

 L15192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15193;
    }
  goto ret0;

 L15193: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1445;  /* reducepv4df_mask */
    }
  goto ret0;

 L62462: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 123)
    goto L18759;
  goto ret0;

 L18759: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62463;
  goto ret0;

 L62463: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L18760;
    }
 L62464: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L18879;
    }
  goto ret0;

 L18760: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L18761;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L18761: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V4DFmode)
    goto L62466;
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L62466: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19247;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L18762;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L19247: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L19248;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L19248: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L19249;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L19249: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L19250;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L19250: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1867;  /* fma_fmsubadd_v4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L18762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L18763;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L18763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18764;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L18764: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1821;  /* fma_fmaddsub_v4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62464;

 L18879: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L18880;
    }
  goto ret0;

 L18880: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V4DFmode)
    goto L62469;
  goto ret0;

 L62469: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19377;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L18881;
    }
 L62468: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L19019;
    }
  goto ret0;

 L19377: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4DFmode)
    goto L62470;
  goto ret0;

 L62470: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L19378;
    }
 L62471: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L19528;
    }
  goto ret0;

 L19378: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19379;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62471;

 L19379: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19380;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62471;

 L19380: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1878;  /* avx512vl_fmsubadd_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62471;

 L19528: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19529;
  goto ret0;

 L19529: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19530;
    }
  goto ret0;

 L19530: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1890;  /* avx512vl_fmsubadd_v4df_mask3 */
    }
  goto ret0;

 L18881: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18882;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62468;

 L18882: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18883;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62468;

 L18883: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1832;  /* avx512vl_fmaddsub_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62468;

 L19019: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19020;
  goto ret0;

 L19020: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19021;
    }
  goto ret0;

 L19021: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1844;  /* avx512vl_fmaddsub_v4df_mask3 */
    }
  goto ret0;

 L12836: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62472;
  goto ret0;

 L62472: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12837;
    }
 L62473: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14692;
    }
  goto ret0;

 L12837: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L12838;
    }
  x3 = XEXP (x2, 0);
  goto L62473;

 L12838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L12839;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62473;

 L12839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12840;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62473;

 L12840: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands) && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1198;  /* *addv4df3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62473;

 L14692: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14693;
    }
  goto ret0;

 L14693: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == MINUS)
    goto L14694;
  goto ret0;

 L14694: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L14695;
  goto ret0;

 L14695: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L14696;
  goto ret0;

 L14696: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (10)]
      && 
#line 2000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1422;  /* avx_addsubv4df3 */
    }
  goto ret0;

 L12872: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12873;
    }
  goto ret0;

 L12873: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L12874;
    }
  goto ret0;

 L12874: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L12875;
    }
  goto ret0;

 L12875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12876;
    }
  goto ret0;

 L12876: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands) && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1202;  /* *subv4df3_mask */
    }
  goto ret0;

 L13204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L13205;
    }
  goto ret0;

 L13205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L13206;
    }
  goto ret0;

 L13206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L13207;
    }
  goto ret0;

 L13207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13208;
    }
  goto ret0;

 L13208: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands) && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1238;  /* *mulv4df3_mask */
    }
  goto ret0;

 L13449: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L13450;
    }
  goto ret0;

 L13450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L13451;
    }
  goto ret0;

 L13451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L13452;
    }
  goto ret0;

 L13452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13453;
    }
  goto ret0;

 L13453: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1265;  /* avx_divv4df3_mask */
    }
  goto ret0;

 L13677: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L13678;
    }
  goto ret0;

 L13678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L13679;
    }
  goto ret0;

 L13679: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13680;
    }
  goto ret0;

 L13680: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1298;  /* avx_sqrtv4df2_mask */
    }
  goto ret0;

 L14146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62474;
  goto ret0;

 L62474: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14147;
    }
 L62475: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14486;
    }
  goto ret0;

 L14147: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14148;
    }
  x3 = XEXP (x2, 0);
  goto L62475;

 L14148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L14149;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62475;

 L14149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14150;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62475;

 L14150: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4DFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1356;  /* *smaxv4df3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62475;

 L14486: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14487;
    }
  goto ret0;

 L14487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L14488;
    }
  goto ret0;

 L14488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14489;
    }
  goto ret0;

 L14489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1395;  /* *smaxv4df3_mask */
    }
  goto ret0;

 L14182: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62476;
  goto ret0;

 L62476: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14183;
    }
 L62477: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14501;
    }
  goto ret0;

 L14183: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14184;
    }
  x3 = XEXP (x2, 0);
  goto L62477;

 L14184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L14185;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62477;

 L14185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14186;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62477;

 L14186: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4DFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1360;  /* *sminv4df3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62477;

 L14501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14502;
    }
  goto ret0;

 L14502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L14503;
    }
  goto ret0;

 L14503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14504;
    }
  goto ret0;

 L14504: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1397;  /* *sminv4df3_mask */
    }
  goto ret0;

 L16178: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62478;
  goto ret0;

 L62478: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L16179;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L16336;
    }
  goto ret0;

 L16179: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L16180;
    }
  goto ret0;

 L16180: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L16181;
    }
  goto ret0;

 L16181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L16182;
    }
  goto ret0;

 L16182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16183;
    }
  goto ret0;

 L16183: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1561;  /* avx_andnotv4df3_mask */
    }
  goto ret0;

 L16336: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L16337;
    }
  goto ret0;

 L16337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L16338;
    }
  goto ret0;

 L16338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16339;
    }
  goto ret0;

 L16339: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (AND, V4DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1581;  /* *andv4df3_mask */
    }
  goto ret0;

 L16350: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L16351;
    }
  goto ret0;

 L16351: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L16352;
    }
  goto ret0;

 L16352: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L16353;
    }
  goto ret0;

 L16353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16354;
    }
  goto ret0;

 L16354: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (IOR, V4DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1583;  /* *iorv4df3_mask */
    }
  goto ret0;

 L16365: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L16366;
    }
  goto ret0;

 L16366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L16367;
    }
  goto ret0;

 L16367: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L16368;
    }
  goto ret0;

 L16368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16369;
    }
  goto ret0;

 L16369: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (XOR, V4DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1585;  /* *xorv4df3_mask */
    }
  goto ret0;

 L16761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62482;
  goto ret0;

 L62482: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17683;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L16762;
    }
 L62481: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L16855;
    }
  goto ret0;

 L17683: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4DFmode)
    goto L62483;
  goto ret0;

 L62483: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L17684;
    }
 L62484: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L17786;
    }
  goto ret0;

 L17684: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L17685;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L17685: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4DFmode)
    goto L62486;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L62486: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18111;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L17686;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L18111: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L18112;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L18112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L18113;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L18113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18114;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L18114: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1762;  /* *fma_fnmsub_v4df */
    }
 L18306: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1779;  /* fma_fnmsub_v4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L17686: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L17687;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L17687: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17688;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L17688: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1725;  /* fma_fnmadd_v4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62484;

 L17786: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L17787;
    }
  goto ret0;

 L17787: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4DFmode)
    goto L62489;
  goto ret0;

 L62489: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18414;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L17788;
    }
 L62488: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L17882;
    }
  goto ret0;

 L18414: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4DFmode)
    goto L62490;
  goto ret0;

 L62490: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L18415;
    }
 L62491: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L18547;
    }
  goto ret0;

 L18415: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18416;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62491;

 L18416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18417;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62491;

 L18417: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1788;  /* avx512vl_fnmsub_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62491;

 L18547: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18548;
  goto ret0;

 L18548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18549;
    }
  goto ret0;

 L18549: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1798;  /* avx512vl_fnmsub_v4df_mask3 */
    }
  goto ret0;

 L17788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17789;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62488;

 L17789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17790;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62488;

 L17790: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1734;  /* avx512vl_fnmadd_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62488;

 L17882: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17883;
  goto ret0;

 L17883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17884;
    }
  goto ret0;

 L17884: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1742;  /* avx512vl_fnmadd_v4df_mask3 */
    }
  goto ret0;

 L16762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L16763;
    }
  x3 = XEXP (x2, 0);
  goto L62481;

 L16763: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4DFmode)
    goto L62493;
  x3 = XEXP (x2, 0);
  goto L62481;

 L62493: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17213;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L16764;
    }
  x3 = XEXP (x2, 0);
  goto L62481;

 L17213: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L17214;
    }
  x3 = XEXP (x2, 0);
  goto L62481;

 L17214: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L17215;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62481;

 L17215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17216;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62481;

 L17216: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1681;  /* fma_fmsub_v4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62481;

 L16764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L16765;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62481;

 L16765: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L16766;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62481;

 L16766: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1637;  /* fma_fmadd_v4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62481;

 L16855: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L16856;
    }
  goto ret0;

 L16856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4DFmode)
    goto L62496;
  goto ret0;

 L62496: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17343;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L16857;
    }
 L62495: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L16969;
    }
  goto ret0;

 L17343: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4DFmode)
    goto L62497;
  goto ret0;

 L62497: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L17344;
    }
 L62498: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L17466;
    }
  goto ret0;

 L17344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17345;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62498;

 L17345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17346;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62498;

 L17346: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1692;  /* avx512vl_fmsub_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62498;

 L17466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17467;
  goto ret0;

 L17467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17468;
    }
  goto ret0;

 L17468: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1702;  /* avx512vl_fmsub_v4df_mask3 */
    }
  goto ret0;

 L16857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L16858;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62495;

 L16858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16859;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62495;

 L16859: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1646;  /* avx512vl_fmadd_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62495;

 L16969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L16970;
  goto ret0;

 L16970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16971;
    }
  goto ret0;

 L16971: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1656;  /* avx512vl_fmadd_v4df_mask3 */
    }
  goto ret0;

 L20641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L62499;
    case V4DImode:
      goto L62500;
    default:
      break;
    }
  goto ret0;

 L62499: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L20642;
    }
  goto ret0;

 L20642: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L20643;
    }
  goto ret0;

 L20643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20644;
    }
  goto ret0;

 L20644: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4477 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (32 == 64 || TARGET_AVX512VL))))
    {
      return 2019;  /* floatv4siv4df2_mask */
    }
  goto ret0;

 L62500: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L20727;
    }
  goto ret0;

 L20727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L20728;
    }
  goto ret0;

 L20728: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20729;
    }
  goto ret0;

 L20729: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2030;  /* floatv4div4df2_mask */
    }
  goto ret0;

 L20758: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V4DImode:
      goto L62501;
    case V4SImode:
      goto L62502;
    default:
      break;
    }
  goto ret0;

 L62501: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L20759;
    }
  goto ret0;

 L20759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L20760;
    }
  goto ret0;

 L20760: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20761;
    }
  goto ret0;

 L20761: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2034;  /* ufloatv4div4df2_mask */
    }
  goto ret0;

 L62502: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L20996;
    }
  goto ret0;

 L20996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L20997;
    }
  goto ret0;

 L20997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20998;
    }
  goto ret0;

 L20998: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2063;  /* ufloatv4siv4df2_mask */
    }
  goto ret0;

 L21886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21887;
    }
  goto ret0;

 L21887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L21888;
    }
  goto ret0;

 L21888: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21889;
    }
  goto ret0;

 L21889: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (32 == 64 || TARGET_AVX512VL) && 1)))
    {
      return 2174;  /* avx_cvtps2pd256_mask */
    }
  goto ret0;

 L11628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L11629;
    }
  x2 = XEXP (x1, 0);
  goto L62433;

 L11629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11630;
    }
  x2 = XEXP (x1, 0);
  goto L62433;

 L11630: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1028;  /* avx512vl_loadv4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62433;

 L11754: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L11755;
    }
  goto ret0;

 L11755: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11756;
    }
  goto ret0;

 L11756: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1046;  /* avx512vl_blendmv4df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_106 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11627;
    case UNSPEC:
      goto L62424;
    case PLUS:
      goto L12820;
    case MINUS:
      goto L12856;
    case MULT:
      goto L13188;
    case DIV:
      goto L13442;
    case SQRT:
      goto L13671;
    case SMAX:
      goto L14130;
    case SMIN:
      goto L14166;
    case VEC_CONCAT:
      goto L14730;
    case AND:
      goto L16170;
    case IOR:
      goto L16343;
    case XOR:
      goto L16358;
    case FMA:
      goto L16618;
    case FLOAT:
      goto L20635;
    case UNSIGNED_FLOAT:
      goto L20744;
    case FLOAT_EXTEND:
      goto L21880;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L62415;
    default:
      goto ret0;
   }
 L62415: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, V4DFmode))
    {
      operands[3] = x1;
      goto L15288;
    }
  goto ret0;

 L11627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62434;
  goto ret0;

 L62434: ATTRIBUTE_UNUSED_LABEL
  return recog_105 (x0, insn, pnum_clobbers);

 L62424: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L62503;
    case 2:
      goto L62506;
    case 3:
      goto L62509;
    default:
      break;
    }
  goto ret0;

 L62503: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12008;
    case 155LL:
      goto L13541;
    case 156LL:
      goto L13795;
    default:
      break;
    }
  goto ret0;

 L12008: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L12009;
    }
  goto ret0;

 L12009: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1082;  /* *avx_loadupd256 */
    }
  goto ret0;

 L13541: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L13542;
    }
  goto ret0;

 L13542: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1279;  /* *rcp14v4df */
    }
  goto ret0;

 L13795: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L13796;
    }
  goto ret0;

 L13796: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1315;  /* *rsqrt14v4df */
    }
  goto ret0;

 L62506: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 48LL:
      goto L14642;
    case 49LL:
      goto L14678;
    case 188LL:
      goto L15182;
    default:
      break;
    }
  goto ret0;

 L14642: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L14643;
    }
  goto ret0;

 L14643: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L14644;
    }
  goto ret0;

 L14644: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1414;  /* *ieee_sminv4df3 */
    }
  goto ret0;

 L14678: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L14679;
    }
  goto ret0;

 L14679: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L14680;
    }
  goto ret0;

 L14680: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1420;  /* *ieee_smaxv4df3 */
    }
  goto ret0;

 L15182: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L15183;
    }
  goto ret0;

 L15183: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L15184;
    }
  goto ret0;

 L15184: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1444;  /* *reducepv4df */
    }
  goto ret0;

 L62509: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15244;
    case 123LL:
      goto L18609;
    default:
      break;
    }
  goto ret0;

 L15244: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L15245;
    }
  goto ret0;

 L15245: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L15246;
    }
  goto ret0;

 L15246: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15247;
    }
  goto ret0;

 L15247: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1452;  /* avx_cmpv4df3 */
    }
  goto ret0;

 L18609: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L18610;
    }
  goto ret0;

 L18610: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L18611;
    }
  goto ret0;

 L18611: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V4DFmode)
    goto L62512;
  goto ret0;

 L62512: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19080;
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L18612;
    }
  goto ret0;

 L19080: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L19081;
    }
  goto ret0;

 L19081: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3577 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1850;  /* *fma_fmsubadd_v4df */
    }
 L19239: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1866;  /* *fma_fmsubadd_v4df */
    }
  goto ret0;

 L18612: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3509 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1804;  /* *fma_fmaddsub_v4df */
    }
 L18754: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1820;  /* *fma_fmaddsub_v4df */
    }
  goto ret0;

 L12820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L12821;
    }
  goto ret0;

 L12821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L12822;
    }
  goto ret0;

 L12822: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1196;  /* *addv4df3 */
    }
  goto ret0;

 L12856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L12857;
    }
  goto ret0;

 L12857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L12858;
    }
  goto ret0;

 L12858: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1200;  /* *subv4df3 */
    }
  goto ret0;

 L13188: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L13189;
    }
  goto ret0;

 L13189: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L13190;
    }
  goto ret0;

 L13190: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1236;  /* *mulv4df3 */
    }
  goto ret0;

 L13442: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L13443;
    }
  goto ret0;

 L13443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L13444;
    }
  goto ret0;

 L13444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1264;  /* avx_divv4df3 */
    }
  goto ret0;

 L13671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L13672;
    }
  goto ret0;

 L13672: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1297;  /* avx_sqrtv4df2 */
    }
  goto ret0;

 L14130: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62513;
  goto ret0;

 L62513: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L14131;
    }
 L62514: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L14479;
    }
  goto ret0;

 L14131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L14132;
    }
  x2 = XEXP (x1, 0);
  goto L62514;

 L14132: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4DFmode, operands)
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1354;  /* *smaxv4df3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62514;

 L14479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L14480;
    }
  goto ret0;

 L14480: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1394;  /* *smaxv4df3 */
    }
  goto ret0;

 L14166: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62515;
  goto ret0;

 L62515: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L14167;
    }
 L62516: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L14494;
    }
  goto ret0;

 L14167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L14168;
    }
  x2 = XEXP (x1, 0);
  goto L62516;

 L14168: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4DFmode, operands)
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1358;  /* *sminv4df3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62516;

 L14494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L14495;
    }
  goto ret0;

 L14495: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1396;  /* *sminv4df3 */
    }
  goto ret0;

 L14730: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L14731;
  goto ret0;

 L14731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode)
    goto L62517;
  goto ret0;

 L62517: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L14732;
    case MINUS:
      goto L14773;
    default:
     break;
   }
  goto ret0;

 L14732: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14733;
  goto ret0;

 L14733: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4DFmode))
    {
      operands[1] = x5;
      goto L14734;
    }
  goto ret0;

 L14734: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14735;
  goto ret0;

 L14735: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14736;
  goto ret0;

 L14736: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14737;
  goto ret0;

 L14737: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L14738;
  goto ret0;

 L14738: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14739;
  goto ret0;

 L14739: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14740;
  goto ret0;

 L14740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == PLUS)
    goto L14741;
  goto ret0;

 L14741: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14742;
  goto ret0;

 L14742: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4DFmode))
    {
      operands[2] = x5;
      goto L14743;
    }
  goto ret0;

 L14743: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14744;
  goto ret0;

 L14744: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14745;
  goto ret0;

 L14745: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14746;
  goto ret0;

 L14746: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L14747;
  goto ret0;

 L14747: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14748;
  goto ret0;

 L14748: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14749;
  goto ret0;

 L14749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L14750;
  goto ret0;

 L14750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == PLUS)
    goto L14751;
  goto ret0;

 L14751: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14752;
  goto ret0;

 L14752: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L14753;
  goto ret0;

 L14753: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14754;
  goto ret0;

 L14754: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14755;
  goto ret0;

 L14755: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14756;
  goto ret0;

 L14756: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L14757;
  goto ret0;

 L14757: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14758;
  goto ret0;

 L14758: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L14759;
  goto ret0;

 L14759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == PLUS)
    goto L14760;
  goto ret0;

 L14760: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14761;
  goto ret0;

 L14761: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L14762;
  goto ret0;

 L14762: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14763;
  goto ret0;

 L14763: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14764;
  goto ret0;

 L14764: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14765;
  goto ret0;

 L14765: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L14766;
  goto ret0;

 L14766: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14767;
  goto ret0;

 L14767: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 2077 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1426;  /* avx_haddv4df3 */
    }
  goto ret0;

 L14773: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14774;
  goto ret0;

 L14774: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4DFmode))
    {
      operands[1] = x5;
      goto L14775;
    }
  goto ret0;

 L14775: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14776;
  goto ret0;

 L14776: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14777;
  goto ret0;

 L14777: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14778;
  goto ret0;

 L14778: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L14779;
  goto ret0;

 L14779: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14780;
  goto ret0;

 L14780: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14781;
  goto ret0;

 L14781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == MINUS)
    goto L14782;
  goto ret0;

 L14782: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14783;
  goto ret0;

 L14783: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4DFmode))
    {
      operands[2] = x5;
      goto L14784;
    }
  goto ret0;

 L14784: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14785;
  goto ret0;

 L14785: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14786;
  goto ret0;

 L14786: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14787;
  goto ret0;

 L14787: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L14788;
  goto ret0;

 L14788: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14789;
  goto ret0;

 L14789: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14790;
  goto ret0;

 L14790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L14791;
  goto ret0;

 L14791: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == MINUS)
    goto L14792;
  goto ret0;

 L14792: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14793;
  goto ret0;

 L14793: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L14794;
  goto ret0;

 L14794: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14795;
  goto ret0;

 L14795: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14796;
  goto ret0;

 L14796: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14797;
  goto ret0;

 L14797: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L14798;
  goto ret0;

 L14798: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14799;
  goto ret0;

 L14799: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L14800;
  goto ret0;

 L14800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == MINUS)
    goto L14801;
  goto ret0;

 L14801: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14802;
  goto ret0;

 L14802: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L14803;
  goto ret0;

 L14803: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14804;
  goto ret0;

 L14804: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L14805;
  goto ret0;

 L14805: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L14806;
  goto ret0;

 L14806: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[2]))
    goto L14807;
  goto ret0;

 L14807: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 1)
    goto L14808;
  goto ret0;

 L14808: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 2077 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 1427;  /* avx_hsubv4df3 */
    }
  goto ret0;

 L16170: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62519;
  goto ret0;

 L62519: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16171;
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L16329;
    }
  goto ret0;

 L16171: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L16172;
    }
  goto ret0;

 L16172: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L16173;
    }
  goto ret0;

 L16173: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1560;  /* avx_andnotv4df3 */
    }
  goto ret0;

 L16329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L16330;
    }
  goto ret0;

 L16330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V4DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1580;  /* *andv4df3 */
    }
  goto ret0;

 L16343: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L16344;
    }
  goto ret0;

 L16344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L16345;
    }
  goto ret0;

 L16345: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V4DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1582;  /* *iorv4df3 */
    }
  goto ret0;

 L16358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L16359;
    }
  goto ret0;

 L16359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L16360;
    }
  goto ret0;

 L16360: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V4DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1584;  /* *xorv4df3 */
    }
  goto ret0;

 L16618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62522;
  goto ret0;

 L62522: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17524;
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L16619;
    }
  goto ret0;

 L17524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L17525;
    }
  goto ret0;

 L17525: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L17526;
    }
  goto ret0;

 L17526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V4DFmode)
    goto L62524;
  goto ret0;

 L62524: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L18089;
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L17527;
    }
  goto ret0;

 L18089: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L18090;
    }
  goto ret0;

 L18090: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1760;  /* *fma_fnmsub_v4df */
    }
 L18294: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1778;  /* *fma_fnmsub_v4df */
    }
  goto ret0;

 L17527: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1709;  /* *fma_fnmadd_v4df */
    }
 L17677: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1724;  /* *fma_fnmadd_v4df */
    }
  goto ret0;

 L16619: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L16620;
    }
  goto ret0;

 L16620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V4DFmode)
    goto L62526;
  goto ret0;

 L62526: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17054;
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L16621;
    }
  goto ret0;

 L17054: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L17055;
    }
  goto ret0;

 L17055: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1665;  /* *fma_fmsub_v4df */
    }
 L17205: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1680;  /* *fma_fmsub_v4df */
    }
  goto ret0;

 L16621: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3201 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1621;  /* *fma_fmadd_v4df */
    }
 L16756: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1636;  /* *fma_fmadd_v4df */
    }
  goto ret0;

 L20635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4SImode:
      goto L62529;
    case V4DImode:
      goto L62528;
    default:
      break;
    }
  goto ret0;

 L62529: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21037;
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L20636;
    }
  goto ret0;

 L21037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L21038;
    }
  goto ret0;

 L21038: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L21039;
  goto ret0;

 L21039: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21040;
  goto ret0;

 L21040: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21041;
  goto ret0;

 L21041: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L21042;
  goto ret0;

 L21042: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 4588 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 2067;  /* avx_cvtdq2pd256_2 */
    }
  goto ret0;

 L20636: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4477 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2018;  /* floatv4siv4df2 */
    }
  goto ret0;

 L62528: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L20713;
    }
  goto ret0;

 L20713: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2028;  /* floatv4div4df2 */
    }
  goto ret0;

 L20744: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4DImode:
      goto L62530;
    case V4SImode:
      goto L62531;
    default:
      break;
    }
  goto ret0;

 L62530: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L20745;
    }
  goto ret0;

 L20745: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2032;  /* ufloatv4div4df2 */
    }
  goto ret0;

 L62531: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L20990;
    }
  goto ret0;

 L20990: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2062;  /* ufloatv4siv4df2 */
    }
  goto ret0;

 L21880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L62533;
  goto ret0;

 L62533: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21894;
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L21881;
    }
  goto ret0;

 L21894: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21895;
    }
  goto ret0;

 L21895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L21896;
  goto ret0;

 L21896: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21897;
  goto ret0;

 L21897: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21898;
  goto ret0;

 L21898: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L21899;
  goto ret0;

 L21899: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 4959 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 2175;  /* *avx_cvtps2pd256_2 */
    }
  goto ret0;

 L21881: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && 1))
    {
      return 2173;  /* avx_cvtps2pd256 */
    }
  goto ret0;

 L15288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L15289;
    }
  goto ret0;

 L15289: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L15290;
    }
  goto ret0;

 L15290: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2450 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1458;  /* *avx_maskcmpv4df3_comm */
    }
 L15314: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2466 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1462;  /* avx_maskcmpv4df3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_107 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L22926;
    case UNSPEC:
      goto L62613;
    case VEC_DUPLICATE:
      goto L41672;
    case VEC_CONCAT:
      goto L43756;
    case REG:
    case SUBREG:
    case MEM:
      goto L62603;
    default:
      goto ret0;
   }
 L62603: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L38050;
    }
  goto ret0;

 L22926: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L62626;
    case V4DFmode:
      goto L62627;
    default:
      break;
    }
  goto ret0;

 L62626: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L23627;
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L22927;
    }
 L62625: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L22997;
    }
  goto ret0;

 L23627: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4DFmode)
    goto L62628;
  goto ret0;

 L62628: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L23628;
    }
 L62629: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L23710;
    }
 L62630: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L25461;
    }
  goto ret0;

 L23628: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L23629;
    }
  x4 = XEXP (x3, 0);
  goto L62629;

 L23629: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23630;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23630: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23631;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23631: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23632;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23632: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23633;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23633: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23634;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L23635;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23636;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23636: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7369 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2319;  /* avx_unpckhpd256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62629;

 L23710: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L23711;
    }
  x4 = XEXP (x3, 0);
  goto L62630;

 L23711: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L23712;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23712: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23713;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23713: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23714;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23714: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23715;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23715: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23716;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L23717;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23718;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L23718: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7528 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2325;  /* *avx_unpcklpd256_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62630;

 L25461: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L25462;
    }
  goto ret0;

 L25462: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L25463;
  goto ret0;

 L25463: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62631;
  goto ret0;

 L62631: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_1_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L25464;
    }
 L62632: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L34900;
    }
  goto ret0;

 L25464: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_4_to_5_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L25465;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62632;

 L25465: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_2_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L25466;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62632;

 L25466: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_6_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L25467;
    }
  x4 = XVECEXP (x3, 0, 0);
  goto L62632;

 L25467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[7] = x2;
      goto L25468;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62632;

 L25468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[8] = x2;
      goto L25469;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62632;

 L25469: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 8046 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL)))
    {
      return 2495;  /* avx_shufpd256_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62632;

 L34900: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L34901;
    }
  goto ret0;

 L34901: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L34902;
    }
  goto ret0;

 L34902: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_4_to_7_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L34903;
    }
  goto ret0;

 L34903: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[7] = x2;
      goto L34904;
    }
  goto ret0;

 L34904: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[8] = x2;
      goto L34905;
    }
  goto ret0;

 L34905: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11830 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1)))))
    {
      return 3404;  /* avx512dq_shuf_f64x2_1_mask */
    }
  goto ret0;

 L22927: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22928;
  x3 = XEXP (x2, 0);
  goto L62625;

 L22928: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22929;
  x3 = XEXP (x2, 0);
  goto L62625;

 L22929: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22930;
  x3 = XEXP (x2, 0);
  goto L62625;

 L22930: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22931;
  x3 = XEXP (x2, 0);
  goto L62625;

 L22931: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22932;
  x3 = XEXP (x2, 0);
  goto L62625;

 L22932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L22933;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62625;

 L22933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22934;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62625;

 L22934: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1])))))
    {
      return 2269;  /* vec_extract_lo_v8df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62625;

 L22997: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22998;
  goto ret0;

 L22998: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22999;
  goto ret0;

 L22999: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23000;
  goto ret0;

 L23000: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23001;
  goto ret0;

 L23001: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23002;
  goto ret0;

 L23002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L23003;
    }
  goto ret0;

 L23003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23004;
    }
  goto ret0;

 L23004: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2275;  /* vec_extract_hi_v8df_mask */
    }
  goto ret0;

 L62627: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L41385;
    }
  goto ret0;

 L41385: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL)
    goto L62633;
  goto ret0;

 L62633: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 4)
    goto L41386;
 L62634: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) >= 1)
    {
      operands[2] = x3;
      goto L42548;
    }
  goto ret0;

 L41386: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L41387;
    }
  goto L62634;

 L41387: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L41388;
    }
  goto L62634;

 L41388: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L41389;
    }
  goto L62634;

 L41389: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_3_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L41390;
    }
  goto L62634;

 L41390: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[6] = x2;
      goto L41391;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L62634;

 L41391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L41392;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L62634;

 L41392: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
    {
      return 3914;  /* avx2_permv4df_1_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  goto L62634;

 L42548: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L42549;
    }
  goto ret0;

 L42549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L42550;
    }
  goto ret0;

 L42550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42551;
    }
  goto ret0;

 L42551: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (32 == 64 || TARGET_AVX512VL)
   && avx_vpermilp_parallel (operands[2], V4DFmode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 4072;  /* *avx_vpermilpv4df_mask */
    }
  goto ret0;

 L62613: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L62635;
    case 1:
      goto L62636;
    case 4:
      goto L62637;
    case 3:
      goto L62641;
    default:
      break;
    }
  goto ret0;

 L62635: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23944;
    case 82LL:
      goto L25260;
    case 143LL:
      goto L41252;
    case 136LL:
      goto L42639;
    case 161LL:
      goto L51105;
    default:
      break;
    }
  goto ret0;

 L23944: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L23945;
    }
  goto ret0;

 L23945: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L23946;
    }
  goto ret0;

 L23946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L23947;
    }
  goto ret0;

 L23947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23948;
    }
  goto ret0;

 L23948: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2350;  /* avx512vl_scalefv4df_mask */
    }
  goto ret0;

 L25260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L25261;
    }
  goto ret0;

 L25261: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25262;
    }
  goto ret0;

 L25262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L25263;
    }
  goto ret0;

 L25263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25264;
    }
  goto ret0;

 L25264: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2480;  /* avx512vl_rndscalev4df_mask */
    }
  goto ret0;

 L41252: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L41253;
    }
  goto ret0;

 L41253: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L41254;
    }
  goto ret0;

 L41254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L41255;
    }
  goto ret0;

 L41255: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L41256;
    }
  goto ret0;

 L41256: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
#line 539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3898;  /* avx2_permvarv4df_mask */
    }
  goto ret0;

 L42639: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L42640;
    }
  goto ret0;

 L42640: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L42641;
    }
  goto ret0;

 L42641: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L42642;
    }
  goto ret0;

 L42642: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L42643;
    }
  goto ret0;

 L42643: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (32 == 64 || TARGET_AVX512VL)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 4084;  /* avx_vpermilvarv4df3_mask */
    }
  goto ret0;

 L51105: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L51106;
    }
  goto ret0;

 L51106: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51107;
    }
  goto ret0;

 L51107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L51108;
    }
  goto ret0;

 L51108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51109;
    }
  goto ret0;

 L51109: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4633;  /* avx512vl_getmantv4df_mask */
    }
  goto ret0;

 L62636: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 160)
    goto L24322;
  goto ret0;

 L24322: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L24323;
    }
  goto ret0;

 L24323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L24324;
    }
  goto ret0;

 L24324: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L24325;
    }
  goto ret0;

 L24325: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2392;  /* avx512vl_getexpv4df_mask */
    }
  goto ret0;

 L62637: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24710;
  goto ret0;

 L24710: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L24711;
    }
  goto ret0;

 L24711: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L24712;
    }
  goto ret0;

 L24712: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L24713;
    }
  goto ret0;

 L24713: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24714;
    }
  goto ret0;

 L24714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[5] = x2;
      goto L24715;
    }
 L24883: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24884;
  goto ret0;

 L24715: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24716;
    }
  x2 = XEXP (x1, 1);
  goto L24883;

 L24716: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2432;  /* avx512vl_fixupimmv4df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24883;

 L24884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24885;
    }
  goto ret0;

 L24885: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2446;  /* avx512vl_fixupimmv4df_mask */
    }
  goto ret0;

 L62641: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 147LL:
      goto L42789;
    case 149LL:
      goto L43039;
    case 148LL:
      goto L43275;
    case 190LL:
      goto L50777;
    default:
      break;
    }
  goto ret0;

 L42789: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L42790;
    }
  goto ret0;

 L42790: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L42791;
    }
  goto ret0;

 L42791: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L42792;
    }
  goto ret0;

 L42792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L42793;
    }
  goto ret0;

 L42793: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42794;
    }
  goto ret0;

 L42794: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4102;  /* avx512vl_vpermi2varv4df3_maskz_1 */
    }
  goto ret0;

 L43039: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L43040;
    }
  goto ret0;

 L43040: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L43041;
    }
  goto ret0;

 L43041: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L43042;
    }
  goto ret0;

 L43042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43043;
  goto ret0;

 L43043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43044;
    }
  goto ret0;

 L43044: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4130;  /* avx512vl_vpermi2varv4df3_mask */
    }
  goto ret0;

 L43275: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L43276;
    }
  goto ret0;

 L43276: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L43277;
    }
  goto ret0;

 L43277: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L43278;
    }
  goto ret0;

 L43278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L43279;
    }
 L43528: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43529;
  goto ret0;

 L43279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43280;
    }
  x2 = XEXP (x1, 1);
  goto L43528;

 L43280: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4156;  /* avx512vl_vpermt2varv4df3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43528;

 L43529: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43530;
    }
  goto ret0;

 L43530: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4184;  /* avx512vl_vpermt2varv4df3_mask */
    }
  goto ret0;

 L50777: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L50778;
    }
  goto ret0;

 L50778: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L50779;
    }
  goto ret0;

 L50779: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50780;
    }
  goto ret0;

 L50780: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L50781;
    }
  goto ret0;

 L50781: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L50782;
    }
  goto ret0;

 L50782: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4594;  /* avx512dq_rangepv4df_mask */
    }
  goto ret0;

 L41672: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case DFmode:
      goto L62646;
    case V2DFmode:
      goto L62648;
    default:
      break;
    }
  goto ret0;

 L62646: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41673;
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L42075;
    }
  goto ret0;

 L41673: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L41674;
    }
  goto ret0;

 L41674: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41675;
  goto ret0;

 L41675: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41676;
  goto ret0;

 L41676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L41677;
    }
  goto ret0;

 L41677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41678;
    }
  goto ret0;

 L41678: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3946;  /* avx512vl_vec_dupv4df_mask */
    }
  goto ret0;

 L42075: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L42076;
    }
  goto ret0;

 L42076: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42077;
    }
  goto ret0;

 L42077: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4002;  /* avx512vl_vec_dup_gprv4df_mask */
    }
  goto ret0;

 L62648: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L42407;
    }
  goto ret0;

 L42407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L42408;
    }
  goto ret0;

 L42408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L42409;
    }
  goto ret0;

 L42409: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16915 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4053;  /* avx512dq_broadcastv4df_mask_1 */
    }
  goto ret0;

 L43756: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62650;
  goto ret0;

 L62650: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L43803;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L43757;
    }
  goto ret0;

 L43803: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L43804;
    }
  goto ret0;

 L43804: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L43805;
  goto ret0;

 L43805: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43806;
  goto ret0;

 L43806: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43807;
  goto ret0;

 L43807: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L43808;
    }
  goto ret0;

 L43808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L43809;
    }
  goto ret0;

 L43809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43810;
    }
  goto ret0;

 L43810: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4214;  /* vec_set_hi_v4df_mask */
    }
  goto ret0;

 L43757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L43758;
  goto ret0;

 L43758: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L43759;
    }
  goto ret0;

 L43759: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L43760;
  goto ret0;

 L43760: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43761;
  goto ret0;

 L43761: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L43762;
  goto ret0;

 L43762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L43763;
    }
  goto ret0;

 L43763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43764;
    }
  goto ret0;

 L43764: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 17527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4210;  /* vec_set_lo_v4df_mask */
    }
  goto ret0;

 L38050: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L38051;
    }
  goto ret0;

 L38051: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38052;
    }
  goto ret0;

 L38052: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3577;  /* avx_blendpd256 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_108 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 2:
      goto L62663;
    case 1:
      goto L62664;
    case 4:
      goto L62665;
    case 3:
      goto L62667;
    default:
      break;
    }
  goto ret0;

 L62663: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 158LL:
      goto L23928;
    case 82LL:
      goto L25244;
    case 143LL:
      goto L41245;
    case 136LL:
      goto L42632;
    case 42LL:
      goto L44016;
    case 161LL:
      goto L51089;
    default:
      break;
    }
  goto ret0;

 L23928: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L23929;
    }
  goto ret0;

 L23929: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L23930;
    }
  goto ret0;

 L23930: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2348;  /* avx512vl_scalefv4df */
    }
  goto ret0;

 L25244: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L25245;
    }
  goto ret0;

 L25245: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L62683;
  goto ret0;

 L62683: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L25246;
    }
 L62684: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39014;
    }
  goto ret0;

 L25246: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2478;  /* avx512vl_rndscalev4df */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 1);
  goto L62684;

 L39014: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14495 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_ROUND) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3685;  /* avx_roundpd256 */
    }
  goto ret0;

 L41245: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L41246;
    }
  goto ret0;

 L41246: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L41247;
    }
  goto ret0;

 L41247: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16518 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1) && 
#line 539 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3897;  /* avx2_permvarv4df */
    }
  goto ret0;

 L42632: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L42633;
    }
  goto ret0;

 L42633: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L42634;
    }
  goto ret0;

 L42634: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4083;  /* avx_vpermilvarv4df3 */
    }
  goto ret0;

 L44016: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L44017;
    }
  goto ret0;

 L44017: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L44018;
    }
  goto ret0;

 L44018: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4230;  /* avx_maskloadpd256 */
    }
  goto ret0;

 L51089: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L51090;
    }
  goto ret0;

 L51090: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L51091;
    }
  goto ret0;

 L51091: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4631;  /* avx512vl_getmantv4df */
    }
  goto ret0;

 L62664: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 160LL:
      goto L24308;
    case 127LL:
      goto L40826;
    default:
      break;
    }
  goto ret0;

 L24308: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L24309;
    }
  goto ret0;

 L24309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2390;  /* avx512vl_getexpv4df */
    }
  goto ret0;

 L40826: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L40827;
    }
  goto ret0;

 L40827: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3835;  /* xop_frczv4df2 */
    }
  goto ret0;

 L62665: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 157LL:
      goto L24690;
    case 137LL:
      goto L40965;
    case 145LL:
      goto L44913;
    default:
      break;
    }
  goto ret0;

 L24690: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L24691;
    }
  goto ret0;

 L24691: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L24692;
    }
  goto ret0;

 L24692: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L24693;
    }
  goto ret0;

 L24693: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24694;
    }
  goto ret0;

 L24694: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2430;  /* avx512vl_fixupimmv4df */
    }
  goto ret0;

 L40965: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L40966;
    }
  goto ret0;

 L40966: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L40967;
    }
  goto ret0;

 L40967: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[3] = x2;
      goto L40968;
    }
  goto ret0;

 L40968: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_3_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L40969;
    }
  goto ret0;

 L40969: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16326 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3856;  /* xop_vpermil2v4df3 */
    }
  goto ret0;

 L44913: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L44914;
    }
  if (GET_CODE (x2) == PC)
    goto L45378;
  goto ret0;

 L44914: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[7] = x2;
      goto L44915;
    }
  goto ret0;

 L44915: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62685;
    case DImode:
      goto L62686;
    default:
      break;
    }
  goto ret0;

 L62685: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44916;
  goto ret0;

 L44916: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L44917;
    }
  goto ret0;

 L44917: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62687;
    case V4DImode:
      goto L62688;
    default:
      break;
    }
  goto ret0;

 L62687: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44918;
    }
  goto ret0;

 L44918: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44919;
    }
  goto ret0;

 L44919: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44920;
  goto ret0;

 L44920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44921;
  goto ret0;

 L44921: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[5] = x2;
      goto L44922;
    }
  goto ret0;

 L44922: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4335;  /* *avx2_gathersiv4df */
    }
  goto ret0;

 L62688: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L45846;
    }
  goto ret0;

 L45846: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45847;
    }
  goto ret0;

 L45847: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45848;
  goto ret0;

 L45848: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45849;
  goto ret0;

 L45849: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[5] = x2;
      goto L45850;
    }
  goto ret0;

 L45850: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4367;  /* *avx2_gatherdiv4df */
    }
  goto ret0;

 L62686: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44945;
  goto ret0;

 L44945: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L44946;
    }
  goto ret0;

 L44946: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62689;
    case V4DImode:
      goto L62690;
    default:
      break;
    }
  goto ret0;

 L62689: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44947;
    }
  goto ret0;

 L44947: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44948;
    }
  goto ret0;

 L44948: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44949;
  goto ret0;

 L44949: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44950;
  goto ret0;

 L44950: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[5] = x2;
      goto L44951;
    }
  goto ret0;

 L44951: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4336;  /* *avx2_gathersiv4df */
    }
  goto ret0;

 L62690: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[4] = x4;
      goto L45875;
    }
  goto ret0;

 L45875: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45876;
    }
  goto ret0;

 L45876: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45877;
  goto ret0;

 L45877: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45878;
  goto ret0;

 L45878: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[5] = x2;
      goto L45879;
    }
  goto ret0;

 L45879: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4368;  /* *avx2_gatherdiv4df */
    }
  goto ret0;

 L45378: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[6] = x2;
      goto L45379;
    }
  goto ret0;

 L45379: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62691;
    case DImode:
      goto L62692;
    default:
      break;
    }
  goto ret0;

 L62691: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45380;
  goto ret0;

 L45380: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45381;
    }
  goto ret0;

 L45381: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62693;
    case V4DImode:
      goto L62694;
    default:
      break;
    }
  goto ret0;

 L62693: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45382;
    }
  goto ret0;

 L45382: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45383;
    }
  goto ret0;

 L45383: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45384;
  goto ret0;

 L45384: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45385;
  goto ret0;

 L45385: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L45386;
    }
  goto ret0;

 L45386: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4351;  /* *avx2_gathersiv4df_2 */
    }
  goto ret0;

 L62694: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46310;
    }
  goto ret0;

 L46310: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46311;
    }
  goto ret0;

 L46311: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46312;
  goto ret0;

 L46312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46313;
  goto ret0;

 L46313: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L46314;
    }
  goto ret0;

 L46314: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4383;  /* *avx2_gatherdiv4df_2 */
    }
  goto ret0;

 L62692: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45409;
  goto ret0;

 L45409: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45410;
    }
  goto ret0;

 L45410: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62695;
    case V4DImode:
      goto L62696;
    default:
      break;
    }
  goto ret0;

 L62695: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45411;
    }
  goto ret0;

 L45411: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45412;
    }
  goto ret0;

 L45412: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45413;
  goto ret0;

 L45413: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45414;
  goto ret0;

 L45414: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L45415;
    }
  goto ret0;

 L45415: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4352;  /* *avx2_gathersiv4df_2 */
    }
  goto ret0;

 L62696: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L46339;
    }
  goto ret0;

 L46339: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46340;
    }
  goto ret0;

 L46340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46341;
  goto ret0;

 L46341: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46342;
  goto ret0;

 L46342: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V4DFmode))
    {
      operands[4] = x2;
      goto L46343;
    }
  goto ret0;

 L46343: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4384;  /* *avx2_gatherdiv4df_2 */
    }
  goto ret0;

 L62667: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 114LL:
      goto L38077;
    case 116LL:
      goto L38105;
    case 147LL:
      goto L42781;
    case 148LL:
      goto L43267;
    case 138LL:
      goto L43648;
    case 145LL:
      goto L47263;
    case 164LL:
      goto L50452;
    case 166LL:
      goto L50620;
    case 190LL:
      goto L50769;
    default:
      break;
    }
  goto ret0;

 L38077: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L38078;
    }
  goto ret0;

 L38078: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L38079;
    }
  goto ret0;

 L38079: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L38080;
    }
  goto ret0;

 L38080: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3581;  /* avx_blendvpd256 */
    }
  goto ret0;

 L38105: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L38106;
    }
  goto ret0;

 L38106: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L38107;
    }
  goto ret0;

 L38107: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38108;
    }
  goto ret0;

 L38108: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14056 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3585;  /* avx_dppd256 */
    }
  goto ret0;

 L42781: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L42782;
    }
  goto ret0;

 L42782: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L42783;
    }
  goto ret0;

 L42783: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L42784;
    }
  goto ret0;

 L42784: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4101;  /* avx512vl_vpermi2varv4df3 */
    }
  goto ret0;

 L43267: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L43268;
    }
  goto ret0;

 L43268: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L43269;
    }
  goto ret0;

 L43269: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L43270;
    }
  goto ret0;

 L43270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4155;  /* avx512vl_vpermt2varv4df3 */
    }
  goto ret0;

 L43648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L43649;
    }
  goto ret0;

 L43649: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L43650;
    }
  goto ret0;

 L43650: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L43651;
    }
  goto ret0;

 L43651: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4197;  /* *avx_vperm2f128v4df_full */
    }
  goto ret0;

 L47263: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L47264;
    }
  if (GET_CODE (x2) == PC)
    goto L47864;
  goto ret0;

 L47264: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47265;
    }
  goto ret0;

 L47265: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[6] = x2;
      goto L47266;
    }
  goto ret0;

 L47266: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62697;
    case DImode:
      goto L62698;
    default:
      break;
    }
  goto ret0;

 L62697: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47267;
  goto ret0;

 L47267: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47268;
    }
  goto ret0;

 L47268: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62699;
    case V4DImode:
      goto L62700;
    default:
      break;
    }
  goto ret0;

 L62699: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47269;
    }
  goto ret0;

 L47269: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47270;
    }
  goto ret0;

 L47270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4415;  /* *avx512f_gathersiv4df */
    }
  goto ret0;

 L62700: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48469;
    }
  goto ret0;

 L48469: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48470;
    }
  goto ret0;

 L48470: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4463;  /* *avx512f_gatherdiv4df */
    }
  goto ret0;

 L62698: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47292;
  goto ret0;

 L47292: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47293;
    }
  goto ret0;

 L47293: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62701;
    case V4DImode:
      goto L62702;
    default:
      break;
    }
  goto ret0;

 L62701: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47294;
    }
  goto ret0;

 L47294: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47295;
    }
  goto ret0;

 L47295: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4416;  /* *avx512f_gathersiv4df */
    }
  goto ret0;

 L62702: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L48494;
    }
  goto ret0;

 L48494: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48495;
    }
  goto ret0;

 L48495: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4464;  /* *avx512f_gatherdiv4df */
    }
  goto ret0;

 L47864: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L47865;
    }
  goto ret0;

 L47865: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[5] = x2;
      goto L47866;
    }
  goto ret0;

 L47866: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L62703;
    case DImode:
      goto L62704;
    default:
      break;
    }
  goto ret0;

 L62703: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47867;
  goto ret0;

 L47867: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L47868;
    }
  goto ret0;

 L47868: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62705;
    case V4DImode:
      goto L62706;
    default:
      break;
    }
  goto ret0;

 L62705: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47869;
    }
  goto ret0;

 L47869: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47870;
    }
  goto ret0;

 L47870: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4439;  /* *avx512f_gathersiv4df_2 */
    }
  goto ret0;

 L62706: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L49069;
    }
  goto ret0;

 L49069: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49070;
    }
  goto ret0;

 L49070: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4487;  /* *avx512f_gatherdiv4df_2 */
    }
  goto ret0;

 L62704: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47892;
  goto ret0;

 L47892: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L47893;
    }
  goto ret0;

 L47893: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L62707;
    case V4DImode:
      goto L62708;
    default:
      break;
    }
  goto ret0;

 L62707: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L47894;
    }
  goto ret0;

 L47894: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47895;
    }
  goto ret0;

 L47895: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4440;  /* *avx512f_gathersiv4df_2 */
    }
  goto ret0;

 L62708: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L49094;
    }
  goto ret0;

 L49094: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49095;
    }
  goto ret0;

 L49095: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4488;  /* *avx512f_gatherdiv4df_2 */
    }
  goto ret0;

 L50452: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L50453;
    }
  goto ret0;

 L50453: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L50454;
    }
  goto ret0;

 L50454: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50455;
    }
  goto ret0;

 L50455: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4552;  /* avx512vl_compressv4df_mask */
    }
  goto ret0;

 L50620: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L50621;
    }
  goto ret0;

 L50621: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L50622;
    }
  goto ret0;

 L50622: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50623;
    }
  goto ret0;

 L50623: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4576;  /* avx512vl_expandv4df_mask */
    }
  goto ret0;

 L50769: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L50770;
    }
  goto ret0;

 L50770: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L50771;
    }
  goto ret0;

 L50771: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50772;
    }
  goto ret0;

 L50772: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4593;  /* avx512dq_rangepv4df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_109 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V4DFmode))
    {
      operands[5] = x1;
      goto L49633;
    }
 L57069: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4DFmode))
    {
      operands[0] = x1;
      goto L22915;
    }
 L57081: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4DFmode))
    {
      operands[0] = x1;
      goto L11626;
    }
 L57099: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4DFmode))
    {
      operands[0] = x1;
      goto L11878;
    }
 L57120: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4DFmode))
    {
      operands[0] = x1;
      goto L22924;
    }
  goto ret0;

 L49633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L62388;
    case DImode:
      goto L62389;
    default:
      break;
    }
  goto L57069;

 L62388: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49634;
  goto L57069;

 L49634: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49635;
    }
  goto L57069;

 L49635: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L62390;
    case V4DImode:
      goto L62391;
    default:
      break;
    }
  goto L57069;

 L62390: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49636;
    }
  goto L57069;

 L49636: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49637;
    }
  goto L57069;

 L49637: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49638;
  x1 = XEXP (x0, 0);
  goto L57069;

 L49638: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49639;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L49639: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L49640;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L49640: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4511;  /* *avx512f_scattersiv4df */
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L62391: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50188;
    }
  goto L57069;

 L50188: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50189;
    }
  goto L57069;

 L50189: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50190;
  x1 = XEXP (x0, 0);
  goto L57069;

 L50190: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50191;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L50191: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L50192;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L50192: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4535;  /* *avx512f_scatterdiv4df */
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L62389: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49657;
  goto L57069;

 L49657: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49658;
    }
  goto L57069;

 L49658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L62392;
    case V4DImode:
      goto L62393;
    default:
      break;
    }
  goto L57069;

 L62392: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49659;
    }
  goto L57069;

 L49659: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49660;
    }
  goto L57069;

 L49660: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49661;
  x1 = XEXP (x0, 0);
  goto L57069;

 L49661: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49662;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L49662: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L49663;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L49663: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4512;  /* *avx512f_scattersiv4df */
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L62393: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L50211;
    }
  goto L57069;

 L50211: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50212;
    }
  goto L57069;

 L50212: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50213;
  x1 = XEXP (x0, 0);
  goto L57069;

 L50213: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50214;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L50214: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L50215;
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L50215: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4536;  /* *avx512f_scatterdiv4df */
    }
  x1 = XEXP (x0, 0);
  goto L57069;

 L22915: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode)
    goto L62394;
 L11548: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V4DFmode))
    {
      operands[1] = x1;
      goto L11549;
    }
  x1 = XEXP (x0, 0);
  goto L57081;

 L62394: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L22916;
    case UNSPEC:
      goto L62396;
    default:
     break;
   }
  goto L11548;

 L22916: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62397;
  goto L11548;

 L62397: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L22917;
    }
 L62398: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L22987;
    }
  goto L11548;

 L22917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22918;
  x2 = XEXP (x1, 0);
  goto L62398;

 L22918: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22919;
  x2 = XEXP (x1, 0);
  goto L62398;

 L22919: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22920;
  x2 = XEXP (x1, 0);
  goto L62398;

 L22920: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22921;
  x2 = XEXP (x1, 0);
  goto L62398;

 L22921: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 6797 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2268;  /* vec_extract_lo_v8df */
    }
  x2 = XEXP (x1, 0);
  goto L62398;

 L22987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L22988;
  goto L11548;

 L22988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L22989;
  goto L11548;

 L22989: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22990;
  goto L11548;

 L22990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22991;
  goto L11548;

 L22991: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 6835 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2274;  /* vec_extract_hi_v8df */
    }
  goto L11548;

 L62396: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L44104;
  goto L11548;

 L44104: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L44105;
    }
  goto L11548;

 L44105: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4245;  /* avx_pd256_pd */
    }
  x1 = XEXP (x0, 1);
  goto L11548;

 L11549: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V4DFmode)
       || register_operand (operands[1], V4DFmode))) && 
#line 171 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1016;  /* *movv4df_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57081;

 L11626: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode)
    goto L62399;
  x1 = XEXP (x0, 0);
  goto L57099;

 L62399: ATTRIBUTE_UNUSED_LABEL
  tem = recog_106 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57099;

 L11878: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode)
    goto L62534;
  x1 = XEXP (x0, 0);
  goto L57120;

 L62534: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11879;
    case UNSPEC:
      goto L62539;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57120;

 L11879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62544;
  x1 = XEXP (x0, 0);
  goto L57120;

 L62544: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L62546;
    case VEC_SELECT:
      goto L22891;
    case REG:
    case SUBREG:
      goto L62543;
    default:
      x1 = XEXP (x0, 0);
      goto L57120;
   }
 L62543: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L11880;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L62546: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12097;
  x1 = XEXP (x0, 0);
  goto L57120;

 L12097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12098;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L12098: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12099;
  x1 = XEXP (x0, 0);
  goto L57120;

 L12099: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12100;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L12100: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1227 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1096;  /* avx512vl_storeupd256_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22891: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L22892;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22892: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L22893;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22893: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62547;
  x1 = XEXP (x0, 0);
  goto L57120;

 L62547: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 0LL:
        goto L22894;
      case 4LL:
        goto L22964;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22894: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22895;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22895: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L22896;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22896: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L22897;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L22898;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22899;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22899: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6782 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2266;  /* vec_extract_lo_v8df_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22964: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L22965;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22965: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L22966;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22966: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L22967;
  x1 = XEXP (x0, 0);
  goto L57120;

 L22967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L22968;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22969;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22969: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6819 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F
   && rtx_equal_p (operands[2], operands[0])))
    {
      return 2272;  /* vec_extract_hi_v8df_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L11880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11881;
  x1 = XEXP (x0, 0);
  goto L57120;

 L11881: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11882;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L11882: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1064;  /* avx512vl_storev4df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L62539: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L62549;
    case 3:
      goto L62551;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L62549: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12054;
    case 103LL:
      goto L12459;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L12054: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L12055;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L12055: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1090;  /* avx_storeupd256 */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L12459: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L12460;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L12460: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1153;  /* avx_movntv4df */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L62551: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44064;
    case 165LL:
      goto L50536;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L44064: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44065;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L44065: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L44066;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L44066: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4238;  /* avx_maskstorepd256 */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L50536: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L50537;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L50537: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50538;
  x1 = XEXP (x0, 0);
  goto L57120;

 L50538: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50539;
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L50539: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4564;  /* avx512vl_compressstorev4df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57120;

 L22924: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode)
    goto L62553;
  goto ret0;

 L62553: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22925;
    case VEC_SELECT:
      goto L23614;
    case UNSPEC:
      goto L62578;
    case IF_THEN_ELSE:
      goto L40114;
    case VEC_DUPLICATE:
      goto L41449;
    case VEC_CONCAT:
      goto L42204;
    default:
     break;
   }
  goto ret0;

 L22925: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode)
    goto L62598;
  goto ret0;

 L62598: ATTRIBUTE_UNUSED_LABEL
  return recog_107 (x0, insn, pnum_clobbers);

 L23614: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DFmode:
      goto L62651;
    case V4DFmode:
      goto L62652;
    default:
      break;
    }
  goto ret0;

 L62651: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L23615;
  goto ret0;

 L23615: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L62653;
  goto ret0;

 L62653: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L23616;
    }
 L62654: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L23698;
    }
 L62655: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L25448;
    }
  goto ret0;

 L23616: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L23617;
    }
  x3 = XEXP (x2, 0);
  goto L62654;

 L23617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23618;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62654;

 L23618: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23619;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62654;

 L23619: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23620;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62654;

 L23620: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23621;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62654;

 L23621: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 7369 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2318;  /* avx_unpckhpd256 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62654;

 L23698: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L23699;
    }
  x3 = XEXP (x2, 0);
  goto L62655;

 L23699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L23700;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62655;

 L23700: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23701;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62655;

 L23701: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23702;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62655;

 L23702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23703;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62655;

 L23703: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)]
      && 
#line 7528 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2324;  /* *avx_unpcklpd256 */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62655;

 L25448: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L25449;
    }
  goto ret0;

 L25449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L62656;
  goto ret0;

 L62656: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4)
    goto L25450;
 L62657: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[3] = x2;
      goto L43677;
    }
  goto ret0;

 L25450: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L62658;
  goto L62657;

 L62658: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_1_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L25451;
    }
 L62659: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L34887;
    }
  goto L62657;

 L25451: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_4_to_5_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L25452;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62659;

 L25452: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_2_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L25453;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62659;

 L25453: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_6_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L25454;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62659;

 L25454: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8046 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1))
    {
      return 2494;  /* avx_shufpd256_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L62659;

 L34887: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L34888;
    }
  goto L62657;

 L34888: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L34889;
    }
  goto L62657;

 L34889: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_4_to_7_operand (x3, VOIDmode))
    {
      operands[6] = x3;
      goto L34890;
    }
  goto L62657;

 L34890: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11830 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL
   && (INTVAL (operands[3]) == (INTVAL (operands[4]) - 1)
       && INTVAL (operands[5]) == (INTVAL (operands[6]) - 1))))
    {
      return 3403;  /* *avx512dq_shuf_f64x2_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L62657;

 L43677: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L43678;
    }
  goto ret0;

 L43678: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && avx_vperm2f128_parallel (operands[3], V4DFmode)))
    {
      return 4200;  /* *avx_vperm2f128v4df_nozero */
    }
  goto ret0;

 L62652: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L41374;
    }
  goto ret0;

 L41374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL)
    goto L62660;
  goto ret0;

 L62660: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4)
    goto L41375;
 L62661: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1
      && avx_vbroadcast_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L42465;
    }
 L62662: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) >= 1)
    {
      operands[2] = x2;
      goto L42540;
    }
  goto ret0;

 L41375: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L41376;
    }
  goto L62661;

 L41376: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L41377;
    }
  goto L62661;

 L41377: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L41378;
    }
  goto L62661;

 L41378: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[5] = x3;
      goto L41379;
    }
  goto L62661;

 L41379: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16589 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2 && 1))
    {
      return 3913;  /* avx2_permv4df_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L62661;

 L42465: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42466;
    }
  goto L62662;

 L42466: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16989 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4062;  /* *avx_vperm_broadcast_v4df */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L62662;

 L42540: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42541;
    }
  goto ret0;

 L42541: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1
   && avx_vpermilp_parallel (operands[2], V4DFmode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 4071;  /* *avx_vpermilpv4df */
    }
  goto ret0;

 L62578: ATTRIBUTE_UNUSED_LABEL
  return recog_108 (x0, insn, pnum_clobbers);

 L40114: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L40115;
    }
  goto ret0;

 L40115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L40116;
    }
  goto ret0;

 L40116: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L40117;
    }
  goto ret0;

 L40117: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 195 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3789;  /* xop_pcmov_v4df256 */
    }
  goto ret0;

 L41449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DFmode:
      goto L62709;
    case V2DFmode:
      goto L62711;
    default:
      break;
    }
  goto ret0;

 L62709: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41450;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L42069;
    }
  goto ret0;

 L41450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62712;
  goto ret0;

 L62712: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L41451;
    }
 L62713: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L41666;
    }
  goto ret0;

 L41451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41452;
  x3 = XEXP (x2, 0);
  goto L62713;

 L41452: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16622 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3920;  /* avx2_vec_dupv4df */
    }
  x3 = XEXP (x2, 0);
  goto L62713;

 L41666: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41667;
  goto ret0;

 L41667: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3945;  /* avx512vl_vec_dupv4df */
    }
  goto ret0;

 L42069: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4001;  /* *avx512vl_vec_dup_gprv4df */
    }
 L42175: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4021;  /* vec_dupv4df */
    }
  goto ret0;

 L62711: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L42401;
    }
  goto ret0;

 L42401: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16921 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 16915 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4052;  /* *avx512dq_broadcastv4df_1 */
    }
  goto ret0;

 L42204: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62716;
  goto ret0;

 L62716: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L43792;
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L42205;
    }
 L62715: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L43747;
    }
 L62717: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L44545;
    }
  goto ret0;

 L43792: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L43793;
    }
  goto ret0;

 L43793: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L43794;
  goto ret0;

 L43794: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L43795;
  goto ret0;

 L43795: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L43796;
  goto ret0;

 L43796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L43797;
    }
  goto ret0;

 L43797: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4213;  /* vec_set_hi_v4df */
    }
  goto ret0;

 L42205: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 16851 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4027;  /* avx_vbroadcastf128_v4df */
    }
  x2 = XEXP (x1, 0);
  goto L62715;

 L43747: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L43748;
  x2 = XEXP (x1, 0);
  goto L62717;

 L43748: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L43749;
    }
  x2 = XEXP (x1, 0);
  goto L62717;

 L43749: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L43750;
  x2 = XEXP (x1, 0);
  goto L62717;

 L43750: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L43751;
  x2 = XEXP (x1, 0);
  goto L62717;

 L43751: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 17527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4209;  /* vec_set_lo_v4df */
    }
  x2 = XEXP (x1, 0);
  goto L62717;

 L44545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L44546;
    }
  goto ret0;

 L44546: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4305;  /* avx_vec_concatv4df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_110 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L62793;
    case PLUS:
      goto L12908;
    case MINUS:
      goto L12944;
    case MULT:
      goto L13240;
    case DIV:
      goto L13321;
    case SQRT:
      goto L13690;
    case SMAX:
      goto L14218;
    case SMIN:
      goto L14254;
    case AND:
      goto L16195;
    case IOR:
      goto L16395;
    case XOR:
      goto L16410;
    case FMA:
      goto L16778;
    case VEC_DUPLICATE:
      goto L19951;
    case FLOAT:
      goto L20790;
    case UNSIGNED_FLOAT:
      goto L20822;
    case FLOAT_EXTEND:
      goto L21761;
    case REG:
    case SUBREG:
    case MEM:
      goto L62768;
    default:
      goto L62769;
   }
 L62768: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L11635;
    }
 L62769: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L11761;
    }
  if (sse_comparison_operator (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L15333;
    }
  goto ret0;

 L62793: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L62800;
    case 2:
      goto L62803;
    case 3:
      goto L62804;
    default:
      break;
    }
  goto ret0;

 L62800: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 104LL:
      goto L12027;
    case 155LL:
      goto L13560;
    case 156LL:
      goto L13814;
    default:
      break;
    }
  goto ret0;

 L12027: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12028;
    }
  goto ret0;

 L12028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L12029;
    }
  goto ret0;

 L12029: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L12030;
    }
  goto ret0;

 L12030: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1085;  /* *sse2_loadupd_mask */
    }
  goto ret0;

 L13560: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13576;
    }
  goto ret0;

 L13576: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13577;
    }
 L13561: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13562;
    }
  goto ret0;

 L13577: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1771 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1284;  /* srcp14v2df */
    }
  x2 = XEXP (x1, 1);
  goto L13561;

 L13562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13563;
    }
  goto ret0;

 L13563: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1282;  /* rcp14v2df_mask */
    }
  goto ret0;

 L13814: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13830;
    }
  goto ret0;

 L13830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13831;
    }
 L13815: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13816;
    }
  goto ret0;

 L13831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1866 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1320;  /* rsqrt14v2df */
    }
  x2 = XEXP (x1, 1);
  goto L13815;

 L13816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13817;
    }
  goto ret0;

 L13817: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1318;  /* rsqrt14v2df_mask */
    }
  goto ret0;

 L62803: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 188)
    goto L15204;
  goto ret0;

 L15204: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L15205;
    }
  goto ret0;

 L15205: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L15206;
    }
  goto ret0;

 L15206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L15207;
    }
  goto ret0;

 L15207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15208;
    }
  goto ret0;

 L15208: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1447;  /* reducepv2df_mask */
    }
  goto ret0;

 L62804: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 188LL:
      goto L15222;
    case 135LL:
      goto L15268;
    case 123LL:
      goto L18776;
    default:
      break;
    }
  goto ret0;

 L15222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L15223;
    }
  goto ret0;

 L15223: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L15224;
    }
  goto ret0;

 L15224: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15225;
    }
  goto ret0;

 L15225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L15226;
  goto ret0;

 L15226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 2402 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1449;  /* reducesv2df */
    }
  goto ret0;

 L15268: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L15269;
    }
  goto ret0;

 L15269: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L15270;
    }
  goto ret0;

 L15270: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15271;
    }
  goto ret0;

 L15271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L15272;
  goto ret0;

 L15272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 2438 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1455;  /* avx_vmcmpv2df3 */
    }
  goto ret0;

 L18776: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62807;
  goto ret0;

 L62807: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L18777;
    }
 L62808: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L18902;
    }
  goto ret0;

 L18777: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L18778;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L18778: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62810;
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L62810: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19266;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L18779;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L19266: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19267;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L19267: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L19268;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L19268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L19269;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L19269: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1869;  /* fma_fmsubadd_v2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L18779: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L18780;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L18780: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18781;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L18781: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1823;  /* fma_fmaddsub_v2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L62808;

 L18902: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L18903;
    }
  goto ret0;

 L18903: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62813;
  goto ret0;

 L62813: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19402;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L18904;
    }
 L62812: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L19042;
    }
  goto ret0;

 L19402: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DFmode)
    goto L62814;
  goto ret0;

 L62814: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19403;
    }
 L62815: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19553;
    }
  goto ret0;

 L19403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19404;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62815;

 L19404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19405;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62815;

 L19405: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1880;  /* avx512vl_fmsubadd_v2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  x4 = XEXP (x3, 0);
  goto L62815;

 L19553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19554;
  goto ret0;

 L19554: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19555;
    }
  goto ret0;

 L19555: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1892;  /* avx512vl_fmsubadd_v2df_mask3 */
    }
  goto ret0;

 L18904: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18905;
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62812;

 L18905: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18906;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62812;

 L18906: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1834;  /* avx512vl_fmaddsub_v2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 2);
  goto L62812;

 L19042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L19043;
  goto ret0;

 L19043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L19044;
    }
  goto ret0;

 L19044: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1846;  /* avx512vl_fmaddsub_v2df_mask3 */
    }
  goto ret0;

 L12908: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62816;
  goto ret0;

 L62816: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12909;
    }
 L62817: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13006;
    }
  goto ret0;

 L12909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L12910;
    }
  x3 = XEXP (x2, 0);
  goto L62817;

 L12910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L12911;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62817;

 L12911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12912;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62817;

 L12912: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands) && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1206;  /* *addv2df3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62817;

 L13006: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14703;
    }
  goto ret0;

 L14703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == MINUS)
    goto L14704;
 L13007: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L13008;
  goto ret0;

 L14704: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L14705;
  goto L13007;

 L14705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L14706;
  goto L13007;

 L14706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 2014 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1423;  /* sse3_addsubv2df3 */
    }
  x2 = XEXP (x1, 1);
  goto L13007;

 L13008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1216;  /* sse2_vmaddv2df3 */
    }
  goto ret0;

 L12944: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62818;
  goto ret0;

 L62818: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12945;
    }
 L62819: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13026;
    }
  goto ret0;

 L12945: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L12946;
    }
  x3 = XEXP (x2, 0);
  goto L62819;

 L12946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L12947;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62819;

 L12947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L12948;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62819;

 L12948: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands) && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1210;  /* *subv2df3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62819;

 L13026: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L13027;
    }
  goto ret0;

 L13027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L13028;
  goto ret0;

 L13028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1218;  /* sse2_vmsubv2df3 */
    }
  goto ret0;

 L13240: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62820;
  goto ret0;

 L62820: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13241;
    }
 L62821: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13302;
    }
  goto ret0;

 L13241: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L13242;
    }
  x3 = XEXP (x2, 0);
  goto L62821;

 L13242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L13243;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62821;

 L13243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13244;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62821;

 L13244: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands) && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1242;  /* *mulv2df3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62821;

 L13302: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L13303;
    }
  goto ret0;

 L13303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L13304;
  goto ret0;

 L13304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1248;  /* sse2_vmmulv2df3 */
    }
  goto ret0;

 L13321: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13322;
    }
  goto ret0;

 L13322: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L13323;
    }
  goto ret0;

 L13323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L13324;
 L13466: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L13467;
    }
  goto ret0;

 L13324: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1250;  /* sse2_vmdivv2df3 */
    }
  x2 = XEXP (x1, 1);
  goto L13466;

 L13467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L13468;
    }
  goto ret0;

 L13468: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1267;  /* sse2_divv2df3_mask */
    }
  goto ret0;

 L13690: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13717;
    }
  goto ret0;

 L13717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13718;
    }
 L13691: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13692;
    }
  goto ret0;

 L13718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1303;  /* sse2_vmsqrtv2df2 */
    }
  x2 = XEXP (x1, 1);
  goto L13691;

 L13692: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L13693;
    }
  goto ret0;

 L13693: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1300;  /* sse2_sqrtv2df2_mask */
    }
  goto ret0;

 L14218: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62822;
  goto ret0;

 L62822: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14219;
    }
 L62823: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14516;
    }
  goto ret0;

 L14219: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14220;
    }
  x3 = XEXP (x2, 0);
  goto L62823;

 L14220: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L14221;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62823;

 L14221: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14222;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62823;

 L14222: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V2DFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1364;  /* *smaxv2df3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62823;

 L14516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14581;
    }
  goto ret0;

 L14581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L14582;
 L14517: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L14518;
    }
  goto ret0;

 L14582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1406;  /* sse2_vmsmaxv2df3 */
    }
  x2 = XEXP (x1, 1);
  goto L14517;

 L14518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14519;
    }
  goto ret0;

 L14519: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1399;  /* *smaxv2df3_mask */
    }
  goto ret0;

 L14254: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62824;
  goto ret0;

 L62824: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14255;
    }
 L62825: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14531;
    }
  goto ret0;

 L14255: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14256;
    }
  x3 = XEXP (x2, 0);
  goto L62825;

 L14256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L14257;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62825;

 L14257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14258;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62825;

 L14258: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V2DFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1368;  /* *sminv2df3_finite_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62825;

 L14531: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14601;
    }
  goto ret0;

 L14601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L14602;
 L14532: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L14533;
    }
  goto ret0;

 L14602: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1408;  /* sse2_vmsminv2df3 */
    }
  x2 = XEXP (x1, 1);
  goto L14532;

 L14533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L14534;
    }
  goto ret0;

 L14534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1401;  /* *sminv2df3_mask */
    }
  goto ret0;

 L16195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62826;
  goto ret0;

 L62826: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L16196;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16381;
    }
  goto ret0;

 L16196: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L16197;
    }
  goto ret0;

 L16197: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L16198;
    }
  goto ret0;

 L16198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L16199;
    }
  goto ret0;

 L16199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16200;
    }
  goto ret0;

 L16200: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1563;  /* sse2_andnotv2df3_mask */
    }
  goto ret0;

 L16381: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L16382;
    }
  goto ret0;

 L16382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L16383;
    }
  goto ret0;

 L16383: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16384;
    }
  goto ret0;

 L16384: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (AND, V2DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1587;  /* *andv2df3_mask */
    }
  goto ret0;

 L16395: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16396;
    }
  goto ret0;

 L16396: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L16397;
    }
  goto ret0;

 L16397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L16398;
    }
  goto ret0;

 L16398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16399;
    }
  goto ret0;

 L16399: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (IOR, V2DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1589;  /* *iorv2df3_mask */
    }
  goto ret0;

 L16410: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16411;
    }
  goto ret0;

 L16411: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L16412;
    }
  goto ret0;

 L16412: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L16413;
    }
  goto ret0;

 L16413: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16414;
    }
  goto ret0;

 L16414: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && TARGET_AVX512VL
   && ix86_binary_operator_ok (XOR, V2DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1591;  /* *xorv2df3_mask */
    }
  goto ret0;

 L16778: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L62830;
  goto ret0;

 L62830: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17702;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16779;
    }
 L62829: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16865;
    }
  goto ret0;

 L17702: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DFmode)
    goto L62831;
  goto ret0;

 L62831: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L17703;
    }
 L62832: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L17797;
    }
 L62833: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L19692;
    }
 L62834: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L19816;
    }
  goto ret0;

 L17703: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L17704;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L17704: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62836;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L62836: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18015;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L17705;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L18015: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L18016;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L18016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L18017;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L18017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L18018;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L18018: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1754;  /* *fma_fnmsub_v2df */
    }
 L18327: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1781;  /* fma_fnmsub_v2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L17705: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L17706;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L17706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17707;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L17707: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1727;  /* fma_fnmadd_v2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62832;

 L17797: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L17798;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L17798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62839;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L62839: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18426;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L17799;
    }
 L62838: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L17893;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L18426: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DFmode)
    goto L62840;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L62840: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L18427;
    }
 L62841: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L18574;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L18427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L18428;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62841;

 L18428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18429;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62841;

 L18429: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1789;  /* avx512vl_fnmsub_v2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62841;

 L18574: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L18575;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L18575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L18576;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L18576: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1800;  /* avx512vl_fnmsub_v2df_mask3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L17799: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17800;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62838;

 L17800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17801;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62838;

 L17801: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1735;  /* avx512vl_fnmadd_v2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62838;

 L17893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17894;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L17894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17895;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L17895: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1743;  /* avx512vl_fnmadd_v2df_mask3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62833;

 L19692: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L19693;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62843;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L62843: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19744;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L19694;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19744: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19745;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19745: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19746;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19746: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3715 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1908;  /* *fmai_fnmsub_v2df */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19695;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3697 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1904;  /* *fmai_fnmadd_v2df */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62834;

 L19816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L19817;
    }
  goto ret0;

 L19817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62845;
  goto ret0;

 L62845: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19839;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L19818;
    }
  goto ret0;

 L19839: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19840;
    }
  goto ret0;

 L19840: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L19841;
    }
  goto ret0;

 L19841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3792 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1917;  /* *fma4i_vmfnmsub_v2df */
    }
  goto ret0;

 L19818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L19819;
    }
  goto ret0;

 L19819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3776 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1915;  /* *fma4i_vmfnmadd_v2df */
    }
  goto ret0;

 L16779: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L16780;
    }
  x3 = XEXP (x2, 0);
  goto L62829;

 L16780: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62847;
  x3 = XEXP (x2, 0);
  goto L62829;

 L62847: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17232;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L19599;
    }
  x3 = XEXP (x2, 0);
  goto L62829;

 L17232: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19646;
    }
  x3 = XEXP (x2, 0);
  goto L62829;

 L19646: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19647;
 L17233: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L17234;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62829;

 L19647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3680 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1900;  /* *fmai_fmsub_v2df */
    }
  x2 = XEXP (x1, 1);
  goto L17233;

 L17234: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L17235;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3761 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1913;  /* *fma4i_vmfmsub_v2df */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62829;

 L17235: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1683;  /* fma_fmsub_v2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62829;

 L19599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L19600;
 L16781: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L16782;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62829;

 L19600: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3663 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1896;  /* *fmai_fmadd_v2df */
    }
  x2 = XEXP (x1, 1);
  goto L16781;

 L16782: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L16783;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3746 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA4) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1911;  /* *fma4i_vmfmadd_v2df */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62829;

 L16783: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1639;  /* fma_fmadd_v2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62829;

 L16865: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L16866;
    }
  goto ret0;

 L16866: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode)
    goto L62850;
  goto ret0;

 L62850: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17368;
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L16867;
    }
 L62849: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L16992;
    }
  goto ret0;

 L17368: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DFmode)
    goto L62851;
  goto ret0;

 L62851: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L17369;
    }
 L62852: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L17477;
    }
  goto ret0;

 L17369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L17370;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62852;

 L17370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17371;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62852;

 L17371: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1694;  /* avx512vl_fmsub_v2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  x4 = XEXP (x3, 0);
  goto L62852;

 L17477: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L17478;
  goto ret0;

 L17478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L17479;
    }
  goto ret0;

 L17479: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1703;  /* avx512vl_fmsub_v2df_mask3 */
    }
  goto ret0;

 L16867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L16868;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62849;

 L16868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16869;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62849;

 L16869: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1647;  /* avx512vl_fmadd_v2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 2);
  goto L62849;

 L16992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[3]))
    goto L16993;
  goto ret0;

 L16993: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L16994;
    }
  goto ret0;

 L16994: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1658;  /* avx512vl_fmadd_v2df_mask3 */
    }
  goto ret0;

 L19951: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode)
    goto L62853;
  goto ret0;

 L62853: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case UNSIGNED_FLOAT:
      goto L19952;
    case FLOAT:
      goto L20503;
    default:
     break;
   }
  goto ret0;

 L19952: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L19953;
    }
  goto ret0;

 L19953: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L19954;
    }
  goto ret0;

 L19954: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 3983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1930;  /* cvtusi2sd32 */
    }
  goto ret0;

 L20503: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L20504;
    }
  goto ret0;

 L20504: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L20505;
    }
  goto ret0;

 L20505: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4238 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2002;  /* sse2_cvtsi2sd */
    }
  goto ret0;

 L20790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2DImode:
      goto L62855;
    case V2SImode:
      goto L62856;
    default:
      break;
    }
  goto ret0;

 L62855: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L20791;
    }
  goto ret0;

 L20791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L20792;
    }
  goto ret0;

 L20792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20793;
    }
  goto ret0;

 L20793: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2038;  /* floatv2div2df2_mask */
    }
  goto ret0;

 L62856: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L21056;
  goto ret0;

 L21056: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L21057;
    }
  goto ret0;

 L21057: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L21058;
  goto ret0;

 L21058: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21059;
  goto ret0;

 L21059: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21060;
  goto ret0;

 L21060: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L21061;
    }
  goto ret0;

 L21061: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21062;
    }
  goto ret0;

 L21062: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2069;  /* sse2_cvtdq2pd_mask */
    }
  goto ret0;

 L20822: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V2DImode:
      goto L62857;
    case V2SImode:
      goto L62858;
    default:
      break;
    }
  goto ret0;

 L62857: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L20823;
    }
  goto ret0;

 L20823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L20824;
    }
  goto ret0;

 L20824: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L20825;
    }
  goto ret0;

 L20825: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2042;  /* ufloatv2div2df2_mask */
    }
  goto ret0;

 L62858: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L21012;
  goto ret0;

 L21012: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L21013;
    }
  goto ret0;

 L21013: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L21014;
  goto ret0;

 L21014: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21015;
  goto ret0;

 L21015: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21016;
  goto ret0;

 L21016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L21017;
    }
  goto ret0;

 L21017: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L21018;
    }
  goto ret0;

 L21018: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4560 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2065;  /* ufloatv2siv2df2_mask */
    }
  goto ret0;

 L21761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L21762;
  goto ret0;

 L21762: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L62859;
  goto ret0;

 L62859: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L21763;
    }
 L62860: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L22072;
    }
  goto ret0;

 L21763: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L21764;
  x4 = XEXP (x3, 0);
  goto L62860;

 L21764: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21765;
  x4 = XEXP (x3, 0);
  goto L62860;

 L21765: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21766;
  x4 = XEXP (x3, 0);
  goto L62860;

 L21766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L21767;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62860;

 L21767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2159;  /* sse2_cvtss2sd */
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L62860;

 L22072: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 2)
    goto L22073;
  goto ret0;

 L22073: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22074;
  goto ret0;

 L22074: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L22075;
  goto ret0;

 L22075: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L22076;
    }
  goto ret0;

 L22076: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L22077;
    }
  goto ret0;

 L22077: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 5052 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2202;  /* sse2_cvtps2pd_mask */
    }
  goto ret0;

 L11635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L11636;
    }
  x2 = XEXP (x1, 0);
  goto L62769;

 L11636: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11637;
    }
  x2 = XEXP (x1, 0);
  goto L62769;

 L11637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 924 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1029;  /* avx512vl_loadv2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62769;

 L11761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L11762;
    }
  goto ret0;

 L11762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L11763;
    }
  goto ret0;

 L11763: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 975 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1047;  /* avx512vl_blendmv2df */
    }
  goto ret0;

 L15333: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L15334;
    }
  goto ret0;

 L15334: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L15335;
    }
  goto ret0;

 L15335: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L15336;
  goto ret0;

 L15336: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 2484 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1465;  /* sse2_vmmaskcmpv2df3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_111 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11634;
    case UNSPEC:
      goto L62760;
    case PLUS:
      goto L12892;
    case MINUS:
      goto L12928;
    case MULT:
      goto L13224;
    case DIV:
      goto L13457;
    case SQRT:
      goto L13684;
    case SMAX:
      goto L14202;
    case SMIN:
      goto L14238;
    case VEC_CONCAT:
      goto L14812;
    case AND:
      goto L16187;
    case IOR:
      goto L16388;
    case XOR:
      goto L16403;
    case FMA:
      goto L16604;
    case FLOAT:
      goto L20486;
    case UNSIGNED_FLOAT:
      goto L20808;
    case FLOAT_EXTEND:
      goto L22061;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L62751;
    default:
      goto ret0;
   }
 L62751: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, V2DFmode))
    {
      operands[3] = x1;
      goto L15294;
    }
  goto ret0;

 L11634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62770;
  goto ret0;

 L62770: ATTRIBUTE_UNUSED_LABEL
  return recog_110 (x0, insn, pnum_clobbers);

 L62760: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L62861;
    case 2:
      goto L62864;
    case 3:
      goto L62867;
    default:
      break;
    }
  goto ret0;

 L62861: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 104LL:
      goto L12021;
    case 155LL:
      goto L13554;
    case 156LL:
      goto L13808;
    default:
      break;
    }
  goto ret0;

 L12021: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L12022;
    }
  goto ret0;

 L12022: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1159 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1084;  /* *sse2_loadupd */
    }
  goto ret0;

 L13554: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L13555;
    }
  goto ret0;

 L13555: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1757 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1281;  /* *rcp14v2df */
    }
  goto ret0;

 L13808: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L13809;
    }
  goto ret0;

 L13809: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1317;  /* *rsqrt14v2df */
    }
  goto ret0;

 L62864: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 48LL:
      goto L14648;
    case 49LL:
      goto L14684;
    case 188LL:
      goto L15197;
    default:
      break;
    }
  goto ret0;

 L14648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L14649;
    }
  goto ret0;

 L14649: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L14650;
    }
  goto ret0;

 L14650: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1415;  /* *ieee_sminv2df3 */
    }
  goto ret0;

 L14684: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L14685;
    }
  goto ret0;

 L14685: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L14686;
    }
  goto ret0;

 L14686: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1421;  /* *ieee_smaxv2df3 */
    }
  goto ret0;

 L15197: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L15198;
    }
  goto ret0;

 L15198: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L15199;
    }
  goto ret0;

 L15199: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2386 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1446;  /* *reducepv2df */
    }
  goto ret0;

 L62867: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15251;
    case 123LL:
      goto L18616;
    default:
      break;
    }
  goto ret0;

 L15251: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L15252;
    }
  goto ret0;

 L15252: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L15253;
    }
  goto ret0;

 L15253: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15254;
    }
  goto ret0;

 L15254: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2421 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1453;  /* avx_cmpv2df3 */
    }
  goto ret0;

 L18616: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L18617;
    }
  goto ret0;

 L18617: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L18618;
    }
  goto ret0;

 L18618: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V2DFmode)
    goto L62870;
  goto ret0;

 L62870: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19088;
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L18619;
    }
  goto ret0;

 L19088: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L19089;
    }
  goto ret0;

 L19089: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3577 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1851;  /* *fma_fmsubadd_v2df */
    }
 L19258: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1868;  /* *fma_fmsubadd_v2df */
    }
  goto ret0;

 L18619: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3509 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1805;  /* *fma_fmaddsub_v2df */
    }
 L18771: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1822;  /* *fma_fmaddsub_v2df */
    }
  goto ret0;

 L12892: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L12893;
    }
  goto ret0;

 L12893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L12894;
    }
  goto ret0;

 L12894: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1204;  /* *addv2df3 */
    }
  goto ret0;

 L12928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L12929;
    }
  goto ret0;

 L12929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L12930;
    }
  goto ret0;

 L12930: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1208;  /* *subv2df3 */
    }
  goto ret0;

 L13224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L13225;
    }
  goto ret0;

 L13225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13226;
    }
  goto ret0;

 L13226: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands) && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1240;  /* *mulv2df3 */
    }
  goto ret0;

 L13457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L13458;
    }
  goto ret0;

 L13458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L13459;
    }
  goto ret0;

 L13459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1266;  /* sse2_divv2df3 */
    }
  goto ret0;

 L13684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L13685;
    }
  goto ret0;

 L13685: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1299;  /* sse2_sqrtv2df2 */
    }
  goto ret0;

 L14202: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62871;
  goto ret0;

 L62871: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L14203;
    }
 L62872: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L14509;
    }
  goto ret0;

 L14203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L14204;
    }
  x2 = XEXP (x1, 0);
  goto L62872;

 L14204: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V2DFmode, operands)
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1362;  /* *smaxv2df3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62872;

 L14509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L14510;
    }
  goto ret0;

 L14510: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1398;  /* *smaxv2df3 */
    }
  goto ret0;

 L14238: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62873;
  goto ret0;

 L62873: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L14239;
    }
 L62874: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L14524;
    }
  goto ret0;

 L14239: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L14240;
    }
  x2 = XEXP (x1, 0);
  goto L62874;

 L14240: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V2DFmode, operands)
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1366;  /* *sminv2df3_finite */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L62874;

 L14524: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L14525;
    }
  goto ret0;

 L14525: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1400;  /* *sminv2df3 */
    }
  goto ret0;

 L14812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L62875;
  goto ret0;

 L62875: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L14813;
    case MINUS:
      goto L14835;
    default:
     break;
   }
  goto ret0;

 L14813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14814;
  goto ret0;

 L14814: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L14815;
    }
  goto ret0;

 L14815: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14816;
  goto ret0;

 L14816: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (const_0_to_1_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L14817;
    }
  goto ret0;

 L14817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14818;
  goto ret0;

 L14818: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L14819;
  goto ret0;

 L14819: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14820;
  goto ret0;

 L14820: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (const_0_to_1_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L14821;
    }
  goto ret0;

 L14821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == PLUS)
    goto L14822;
  goto ret0;

 L14822: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14823;
  goto ret0;

 L14823: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L14824;
    }
  goto ret0;

 L14824: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14825;
  goto ret0;

 L14825: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (const_0_to_1_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L14826;
    }
  goto ret0;

 L14826: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14827;
  goto ret0;

 L14827: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L14828;
  goto ret0;

 L14828: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14829;
  goto ret0;

 L14829: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (const_0_to_1_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L14830;
    }
  goto ret0;

 L14830: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2115 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3
   && INTVAL (operands[3]) != INTVAL (operands[4])
   && INTVAL (operands[5]) != INTVAL (operands[6])))
    {
      return 1428;  /* *sse3_haddv2df3 */
    }
  goto ret0;

 L14835: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14836;
  goto ret0;

 L14836: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L14837;
    }
  goto ret0;

 L14837: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14838;
  goto ret0;

 L14838: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14839;
  goto ret0;

 L14839: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14840;
  goto ret0;

 L14840: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L14841;
  goto ret0;

 L14841: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14842;
  goto ret0;

 L14842: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14843;
  goto ret0;

 L14843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == MINUS)
    goto L14844;
  goto ret0;

 L14844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14845;
  goto ret0;

 L14845: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L14846;
    }
  goto ret0;

 L14846: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14847;
  goto ret0;

 L14847: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14848;
  goto ret0;

 L14848: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L14849;
  goto ret0;

 L14849: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L14850;
  goto ret0;

 L14850: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L14851;
  goto ret0;

 L14851: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2139 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1429;  /* sse3_hsubv2df3 */
    }
  goto ret0;

 L16187: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62877;
  goto ret0;

 L62877: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16188;
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L16374;
    }
  goto ret0;

 L16188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16189;
    }
  goto ret0;

 L16189: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L16190;
    }
  goto ret0;

 L16190: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1562;  /* sse2_andnotv2df3 */
    }
  goto ret0;

 L16374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L16375;
    }
  goto ret0;

 L16375: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (AND, V2DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1586;  /* *andv2df3 */
    }
  goto ret0;

 L16388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L16389;
    }
  goto ret0;

 L16389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L16390;
    }
  goto ret0;

 L16390: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (IOR, V2DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1588;  /* *iorv2df3 */
    }
  goto ret0;

 L16403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L16404;
    }
  goto ret0;

 L16404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L16405;
    }
  goto ret0;

 L16405: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2815 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1
   && ix86_binary_operator_ok (XOR, V2DFmode, operands)) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1590;  /* *xorv2df3 */
    }
  goto ret0;

 L16604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62880;
  goto ret0;

 L62880: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17508;
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L16605;
    }
  goto ret0;

 L17508: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L17509;
    }
  goto ret0;

 L17509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L17510;
    }
  goto ret0;

 L17510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V2DFmode)
    goto L62882;
  goto ret0;

 L62882: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17993;
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L17511;
    }
  goto ret0;

 L17993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L17994;
    }
  goto ret0;

 L17994: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1752;  /* *fma_fnmsub_v2df */
    }
 L18315: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1780;  /* *fma_fnmsub_v2df */
    }
  goto ret0;

 L17511: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1707;  /* *fma_fnmadd_v2df */
    }
 L17696: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1726;  /* *fma_fnmadd_v2df */
    }
  goto ret0;

 L16605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L16606;
    }
  goto ret0;

 L16606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == V2DFmode)
    goto L62884;
  goto ret0;

 L62884: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17038;
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L16607;
    }
  goto ret0;

 L17038: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L17039;
    }
  goto ret0;

 L17039: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1663;  /* *fma_fmsub_v2df */
    }
 L17224: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1682;  /* *fma_fmsub_v2df */
    }
  goto ret0;

 L16607: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3201 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1619;  /* *fma_fmadd_v2df */
    }
 L16773: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1) && 
#line 3215 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1638;  /* *fma_fmadd_v2df */
    }
  goto ret0;

 L20486: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SImode:
      goto L62887;
    case V2DImode:
      goto L62886;
    default:
      break;
    }
  goto ret0;

 L62887: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21047;
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L20487;
    }
  goto ret0;

 L21047: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L21048;
    }
  goto ret0;

 L21048: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L21049;
  goto ret0;

 L21049: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21050;
  goto ret0;

 L21050: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2068;  /* sse2_cvtdq2pd */
    }
  goto ret0;

 L20487: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4200 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 1999;  /* sse2_cvtpi2pd */
    }
  goto ret0;

 L62886: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L20777;
    }
  goto ret0;

 L20777: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2036;  /* floatv2div2df2 */
    }
  goto ret0;

 L20808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2DImode:
      goto L62888;
    case V2SImode:
      goto L62889;
    default:
      break;
    }
  goto ret0;

 L62888: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L20809;
    }
  goto ret0;

 L20809: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2040;  /* ufloatv2div2df2 */
    }
  goto ret0;

 L62889: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L21003;
  goto ret0;

 L21003: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L21004;
    }
  goto ret0;

 L21004: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L21005;
  goto ret0;

 L21005: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21006;
  goto ret0;

 L21006: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 4560 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2064;  /* ufloatv2siv2df2 */
    }
  goto ret0;

 L22061: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L22062;
  goto ret0;

 L22062: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L22063;
    }
  goto ret0;

 L22063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22064;
  goto ret0;

 L22064: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L22065;
  goto ret0;

 L22065: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 5052 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2201;  /* sse2_cvtps2pd */
    }
  goto ret0;

 L15294: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L15295;
    }
  goto ret0;

 L15295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L15296;
    }
  goto ret0;

 L15296: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2450 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1459;  /* *sse2_maskcmpv2df3_comm */
    }
 L15320: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2466 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1463;  /* sse2_maskcmpv2df3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_112 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L62992;
    case 1:
      goto L62993;
    case 4:
      goto L62995;
    case 3:
      goto L62997;
    default:
      break;
    }
  goto ret0;

 L62992: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23765;
    case 160LL:
      goto L24393;
    case 82LL:
      goto L25296;
    case 136LL:
      goto L42654;
    case 161LL:
      goto L51141;
    default:
      break;
    }
  goto ret0;

 L23765: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L23766;
    }
  goto ret0;

 L23766: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L23767;
    }
  goto ret0;

 L23767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L23768;
 L23982: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L23983;
    }
  goto ret0;

 L23768: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 7657 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2330;  /* avx512f_vmscalefv2df */
    }
  x2 = XEXP (x1, 1);
  goto L23982;

 L23983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23984;
    }
  goto ret0;

 L23984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2354;  /* avx512vl_scalefv2df_mask */
    }
  goto ret0;

 L24393: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L24394;
    }
  goto ret0;

 L24394: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L24395;
    }
  goto ret0;

 L24395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L24396;
  goto ret0;

 L24396: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2400;  /* avx512f_sgetexpv2df */
    }
  goto ret0;

 L25296: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L63008;
  goto ret0;

 L63008: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L25297;
    }
 L63009: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L39034;
    }
  goto ret0;

 L25297: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25298;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L63009;

 L25298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L25299;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L63009;

 L25299: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L25300;
    }
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L63009;

 L25300: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2484;  /* avx512vl_rndscalev2df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XVECEXP (x2, 0, 0);
  goto L63009;

 L39034: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39035;
    }
  goto ret0;

 L39035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L39036;
    }
  goto ret0;

 L39036: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 14581 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_ROUND) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3688;  /* sse4_1_roundsd */
    }
  goto ret0;

 L42654: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L42655;
    }
  goto ret0;

 L42655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L42656;
    }
  goto ret0;

 L42656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L42657;
    }
  goto ret0;

 L42657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L42658;
    }
  goto ret0;

 L42658: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (16 == 64 || TARGET_AVX512VL)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 4086;  /* avx_vpermilvarv2df3_mask */
    }
  goto ret0;

 L51141: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L51142;
    }
  goto ret0;

 L51142: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51143;
    }
  goto ret0;

 L51143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L51144;
    }
  goto ret0;

 L51144: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L51145;
    }
  goto ret0;

 L51145: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4637;  /* avx512vl_getmantv2df_mask */
    }
  goto ret0;

 L62993: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 160LL:
      goto L24354;
    case 173LL:
      goto L39671;
    case 174LL:
      goto L39771;
    case 127LL:
      goto L40839;
    default:
      break;
    }
  goto ret0;

 L24354: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L24355;
    }
  goto ret0;

 L24355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L24356;
    }
  goto ret0;

 L24356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L24357;
    }
  goto ret0;

 L24357: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2396;  /* avx512vl_getexpv2df_mask */
    }
  goto ret0;

 L39671: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L39672;
    }
  goto ret0;

 L39672: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L39673;
    }
  goto ret0;

 L39673: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 15401 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3749;  /* avx512er_vmrcp28v2df */
    }
  goto ret0;

 L39771: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L39772;
    }
  goto ret0;

 L39772: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L39773;
    }
  goto ret0;

 L39773: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 15427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3761;  /* avx512er_vmrsqrt28v2df */
    }
  goto ret0;

 L40839: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L40840;
    }
  goto ret0;

 L40840: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L40841;
    }
  goto ret0;

 L40841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 16246 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3837;  /* *xop_vmfrczv2df2 */
    }
  goto ret0;

 L62995: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24754;
  goto ret0;

 L24754: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L24755;
    }
  goto ret0;

 L24755: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L24756;
    }
  goto ret0;

 L24756: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L24757;
    }
  goto ret0;

 L24757: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24758;
    }
  goto ret0;

 L24758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L24759;
    }
 L24908: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L24909;
  goto ret0;

 L24759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L24760;
    }
  x2 = XEXP (x1, 1);
  goto L24908;

 L24760: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2436;  /* avx512vl_fixupimmv2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L24908;

 L24909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L24910;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 7857 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2454;  /* avx512f_sfixupimmv2df */
    }
  goto ret0;

 L24910: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2448;  /* avx512vl_fixupimmv2df_mask */
    }
  goto ret0;

 L62997: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 82LL:
      goto L25339;
    case 147LL:
      goto L42857;
    case 149LL:
      goto L43079;
    case 148LL:
      goto L43343;
    case 190LL:
      goto L50794;
    case 161LL:
      goto L51184;
    default:
      break;
    }
  goto ret0;

 L25339: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L25340;
    }
  goto ret0;

 L25340: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L25341;
    }
  goto ret0;

 L25341: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L25342;
    }
  goto ret0;

 L25342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L25343;
  goto ret0;

 L25343: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 7903 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2488;  /* avx512f_rndscalev2df */
    }
  goto ret0;

 L42857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L42858;
    }
  goto ret0;

 L42858: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L42859;
    }
  goto ret0;

 L42859: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L42860;
    }
  goto ret0;

 L42860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L42861;
    }
  goto ret0;

 L42861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42862;
    }
  goto ret0;

 L42862: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4110;  /* avx512vl_vpermi2varv2df3_maskz_1 */
    }
  goto ret0;

 L43079: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L43080;
    }
  goto ret0;

 L43080: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L43081;
    }
  goto ret0;

 L43081: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L43082;
    }
  goto ret0;

 L43082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L43083;
  goto ret0;

 L43083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43084;
    }
  goto ret0;

 L43084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17194 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4134;  /* avx512vl_vpermi2varv2df3_mask */
    }
  goto ret0;

 L43343: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L43344;
    }
  goto ret0;

 L43344: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L43345;
    }
  goto ret0;

 L43345: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L43346;
    }
  goto ret0;

 L43346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L43347;
    }
 L43568: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[2]))
    goto L43569;
  goto ret0;

 L43347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L43348;
    }
  x2 = XEXP (x1, 1);
  goto L43568;

 L43348: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4164;  /* avx512vl_vpermt2varv2df3_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L43568;

 L43569: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L43570;
    }
  goto ret0;

 L43570: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17323 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4188;  /* avx512vl_vpermt2varv2df3_mask */
    }
  goto ret0;

 L50794: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L50795;
    }
  goto ret0;

 L50795: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L50796;
    }
  goto ret0;

 L50796: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50829;
    }
  goto ret0;

 L50829: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L50830;
 L50797: ATTRIBUTE_UNUSED_LABEL
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L50798;
    }
  goto ret0;

 L50830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 18429 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 4599;  /* avx512dq_rangesv2df */
    }
  x2 = XEXP (x1, 1);
  goto L50797;

 L50798: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L50799;
    }
  goto ret0;

 L50799: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4596;  /* avx512dq_rangepv2df_mask */
    }
  goto ret0;

 L51184: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L51185;
    }
  goto ret0;

 L51185: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L51186;
    }
  goto ret0;

 L51186: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51187;
    }
  goto ret0;

 L51187: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L51188;
  goto ret0;

 L51188: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 18484 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 4641;  /* avx512f_vgetmantv2df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_113 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 2:
      goto L63012;
    case 1:
      goto L63013;
    case 4:
      goto L63014;
    case 3:
      goto L63016;
    default:
      break;
    }
  goto ret0;

 L63012: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 158LL:
      goto L23964;
    case 82LL:
      goto L25280;
    case 136LL:
      goto L42647;
    case 42LL:
      goto L44004;
    case 161LL:
      goto L51125;
    default:
      break;
    }
  goto ret0;

 L23964: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L23965;
    }
  goto ret0;

 L23965: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L23966;
    }
  goto ret0;

 L23966: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2352;  /* avx512vl_scalefv2df */
    }
  goto ret0;

 L25280: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L25281;
    }
  goto ret0;

 L25281: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L63030;
  goto ret0;

 L63030: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L25282;
    }
 L63031: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39020;
    }
  goto ret0;

 L25282: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2482;  /* avx512vl_rndscalev2df */
    }
  x1 = XEXP (x0, 1);
  x2 = XVECEXP (x1, 0, 1);
  goto L63031;

 L39020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14495 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_ROUND) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3686;  /* sse4_1_roundpd */
    }
  goto ret0;

 L42647: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L42648;
    }
  goto ret0;

 L42648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L42649;
    }
  goto ret0;

 L42649: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17095 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 4085;  /* avx_vpermilvarv2df3 */
    }
  goto ret0;

 L44004: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44005;
    }
  goto ret0;

 L44005: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L44006;
    }
  goto ret0;

 L44006: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17688 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4228;  /* avx_maskloadpd */
    }
  goto ret0;

 L51125: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L51126;
    }
  goto ret0;

 L51126: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L51127;
    }
  goto ret0;

 L51127: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4635;  /* avx512vl_getmantv2df */
    }
  goto ret0;

 L63013: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 160LL:
      goto L24340;
    case 127LL:
      goto L40816;
    default:
      break;
    }
  goto ret0;

 L24340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L24341;
    }
  goto ret0;

 L24341: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2394;  /* avx512vl_getexpv2df */
    }
  goto ret0;

 L40816: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L40817;
    }
  goto ret0;

 L40817: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3833;  /* xop_frczv2df2 */
    }
  goto ret0;

 L63014: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 157LL:
      goto L24734;
    case 137LL:
      goto L40973;
    case 145LL:
      goto L44797;
    default:
      break;
    }
  goto ret0;

 L24734: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L24735;
    }
  goto ret0;

 L24735: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L24736;
    }
  goto ret0;

 L24736: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L24737;
    }
  goto ret0;

 L24737: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24738;
    }
  goto ret0;

 L24738: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2434;  /* avx512vl_fixupimmv2df */
    }
  goto ret0;

 L40973: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L40974;
    }
  goto ret0;

 L40974: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L40975;
    }
  goto ret0;

 L40975: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L40976;
    }
  goto ret0;

 L40976: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (const_0_to_3_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L40977;
    }
  goto ret0;

 L40977: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16326 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3857;  /* xop_vpermil2v2df3 */
    }
  goto ret0;

 L44797: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L44798;
    }
  if (GET_CODE (x2) == PC)
    goto L45262;
  goto ret0;

 L44798: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[7] = x2;
      goto L44799;
    }
  goto ret0;

 L44799: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63032;
    case DImode:
      goto L63033;
    default:
      break;
    }
  goto ret0;

 L63032: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44800;
  goto ret0;

 L44800: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L44801;
    }
  goto ret0;

 L44801: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63034;
    case V2DImode:
      goto L63035;
    default:
      break;
    }
  goto ret0;

 L63034: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44802;
    }
  goto ret0;

 L44802: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44803;
    }
  goto ret0;

 L44803: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44804;
  goto ret0;

 L44804: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44805;
  goto ret0;

 L44805: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L44806;
    }
  goto ret0;

 L44806: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4331;  /* *avx2_gathersiv2df */
    }
  goto ret0;

 L63035: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45730;
    }
  goto ret0;

 L45730: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45731;
    }
  goto ret0;

 L45731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45732;
  goto ret0;

 L45732: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45733;
  goto ret0;

 L45733: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L45734;
    }
  goto ret0;

 L45734: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4363;  /* *avx2_gatherdiv2df */
    }
  goto ret0;

 L63033: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L44829;
  goto ret0;

 L44829: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L44830;
    }
  goto ret0;

 L44830: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63036;
    case V2DImode:
      goto L63037;
    default:
      break;
    }
  goto ret0;

 L63036: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L44831;
    }
  goto ret0;

 L44831: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L44832;
    }
  goto ret0;

 L44832: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L44833;
  goto ret0;

 L44833: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L44834;
  goto ret0;

 L44834: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L44835;
    }
  goto ret0;

 L44835: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4332;  /* *avx2_gathersiv2df */
    }
  goto ret0;

 L63037: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[4] = x4;
      goto L45759;
    }
  goto ret0;

 L45759: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L45760;
    }
  goto ret0;

 L45760: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45761;
  goto ret0;

 L45761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45762;
  goto ret0;

 L45762: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L45763;
    }
  goto ret0;

 L45763: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4364;  /* *avx2_gatherdiv2df */
    }
  goto ret0;

 L45262: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[6] = x2;
      goto L45263;
    }
  goto ret0;

 L45263: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63038;
    case DImode:
      goto L63039;
    default:
      break;
    }
  goto ret0;

 L63038: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45264;
  goto ret0;

 L45264: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L45265;
    }
  goto ret0;

 L45265: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63040;
    case V2DImode:
      goto L63041;
    default:
      break;
    }
  goto ret0;

 L63040: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45266;
    }
  goto ret0;

 L45266: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45267;
    }
  goto ret0;

 L45267: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45268;
  goto ret0;

 L45268: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45269;
  goto ret0;

 L45269: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L45270;
    }
  goto ret0;

 L45270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4347;  /* *avx2_gathersiv2df_2 */
    }
  goto ret0;

 L63041: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46194;
    }
  goto ret0;

 L46194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46195;
    }
  goto ret0;

 L46195: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46196;
  goto ret0;

 L46196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46197;
  goto ret0;

 L46197: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L46198;
    }
  goto ret0;

 L46198: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4379;  /* *avx2_gatherdiv2df_2 */
    }
  goto ret0;

 L63039: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L45293;
  goto ret0;

 L45293: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L45294;
    }
  goto ret0;

 L45294: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63042;
    case V2DImode:
      goto L63043;
    default:
      break;
    }
  goto ret0;

 L63042: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L45295;
    }
  goto ret0;

 L45295: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L45296;
    }
  goto ret0;

 L45296: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L45297;
  goto ret0;

 L45297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L45298;
  goto ret0;

 L45298: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L45299;
    }
  goto ret0;

 L45299: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4348;  /* *avx2_gathersiv2df_2 */
    }
  goto ret0;

 L63043: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L46223;
    }
  goto ret0;

 L46223: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L46224;
    }
  goto ret0;

 L46224: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L46225;
  goto ret0;

 L46225: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L46226;
  goto ret0;

 L46226: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L46227;
    }
  goto ret0;

 L46227: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4380;  /* *avx2_gatherdiv2df_2 */
    }
  goto ret0;

 L63016: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 114LL:
      goto L38084;
    case 116LL:
      goto L38112;
    case 147LL:
      goto L42849;
    case 148LL:
      goto L43335;
    case 145LL:
      goto L47463;
    case 164LL:
      goto L50480;
    case 166LL:
      goto L50648;
    case 190LL:
      goto L50786;
    default:
      break;
    }
  goto ret0;

 L38084: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L38085;
    }
  goto ret0;

 L38085: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L38086;
    }
  goto ret0;

 L38086: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L38087;
    }
  goto ret0;

 L38087: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3582;  /* sse4_1_blendvpd */
    }
  goto ret0;

 L38112: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L38113;
    }
  goto ret0;

 L38113: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L38114;
    }
  goto ret0;

 L38114: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38115;
    }
  goto ret0;

 L38115: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14056 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3586;  /* sse4_1_dppd */
    }
  goto ret0;

 L42849: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L42850;
    }
  goto ret0;

 L42850: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L42851;
    }
  goto ret0;

 L42851: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L42852;
    }
  goto ret0;

 L42852: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17152 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4109;  /* avx512vl_vpermi2varv2df3 */
    }
  goto ret0;

 L43335: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L43336;
    }
  goto ret0;

 L43336: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L43337;
    }
  goto ret0;

 L43337: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L43338;
    }
  goto ret0;

 L43338: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17281 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4163;  /* avx512vl_vpermt2varv2df3 */
    }
  goto ret0;

 L47463: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L47464;
    }
  if (GET_CODE (x2) == PC)
    goto L48064;
  goto ret0;

 L47464: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L47465;
    }
  goto ret0;

 L47465: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[6] = x2;
      goto L47466;
    }
  goto ret0;

 L47466: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63044;
    case DImode:
      goto L63045;
    default:
      break;
    }
  goto ret0;

 L63044: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47467;
  goto ret0;

 L47467: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L47468;
    }
  goto ret0;

 L47468: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63046;
    case V2DImode:
      goto L63047;
    default:
      break;
    }
  goto ret0;

 L63046: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47469;
    }
  goto ret0;

 L47469: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47470;
    }
  goto ret0;

 L47470: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4423;  /* *avx512f_gathersiv2df */
    }
  goto ret0;

 L63047: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48669;
    }
  goto ret0;

 L48669: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48670;
    }
  goto ret0;

 L48670: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4471;  /* *avx512f_gatherdiv2df */
    }
  goto ret0;

 L63045: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L47492;
  goto ret0;

 L47492: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L47493;
    }
  goto ret0;

 L47493: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63048;
    case V2DImode:
      goto L63049;
    default:
      break;
    }
  goto ret0;

 L63048: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L47494;
    }
  goto ret0;

 L47494: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L47495;
    }
  goto ret0;

 L47495: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4424;  /* *avx512f_gathersiv2df */
    }
  goto ret0;

 L63049: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L48694;
    }
  goto ret0;

 L48694: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L48695;
    }
  goto ret0;

 L48695: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4472;  /* *avx512f_gatherdiv2df */
    }
  goto ret0;

 L48064: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L48065;
    }
  goto ret0;

 L48065: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (vsib_mem_operator (x2, DFmode))
    {
      operands[5] = x2;
      goto L48066;
    }
  goto ret0;

 L48066: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63050;
    case DImode:
      goto L63051;
    default:
      break;
    }
  goto ret0;

 L63050: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48067;
  goto ret0;

 L48067: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L48068;
    }
  goto ret0;

 L48068: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63052;
    case V2DImode:
      goto L63053;
    default:
      break;
    }
  goto ret0;

 L63052: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L48069;
    }
  goto ret0;

 L48069: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48070;
    }
  goto ret0;

 L48070: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4447;  /* *avx512f_gathersiv2df_2 */
    }
  goto ret0;

 L63053: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49269;
    }
  goto ret0;

 L49269: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49270;
    }
  goto ret0;

 L49270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4495;  /* *avx512f_gatherdiv2df_2 */
    }
  goto ret0;

 L63051: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L48092;
  goto ret0;

 L48092: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L48093;
    }
  goto ret0;

 L48093: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L63054;
    case V2DImode:
      goto L63055;
    default:
      break;
    }
  goto ret0;

 L63054: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L48094;
    }
  goto ret0;

 L48094: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L48095;
    }
  goto ret0;

 L48095: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4448;  /* *avx512f_gathersiv2df_2 */
    }
  goto ret0;

 L63055: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L49294;
    }
  goto ret0;

 L49294: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49295;
    }
  goto ret0;

 L49295: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4496;  /* *avx512f_gatherdiv2df_2 */
    }
  goto ret0;

 L50480: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L50481;
    }
  goto ret0;

 L50481: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L50482;
    }
  goto ret0;

 L50482: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50483;
    }
  goto ret0;

 L50483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18362 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4556;  /* avx512vl_compressv2df_mask */
    }
  goto ret0;

 L50648: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L50649;
    }
  goto ret0;

 L50649: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L50650;
    }
  goto ret0;

 L50650: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50651;
    }
  goto ret0;

 L50651: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18399 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4580;  /* avx512vl_expandv2df_mask */
    }
  goto ret0;

 L50786: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L50787;
    }
  goto ret0;

 L50787: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L50788;
    }
  goto ret0;

 L50788: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50789;
    }
  goto ret0;

 L50789: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && 1) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4595;  /* avx512dq_rangepv2df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_114 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L22814;
    case UNSPEC:
      goto L62930;
    case VEC_SELECT:
      goto L25660;
    case VEC_DUPLICATE:
      goto L25717;
    case VEC_CONCAT:
      goto L25730;
    case IF_THEN_ELSE:
      goto L40121;
    default:
     break;
   }
  goto ret0;

 L22814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62948;
  goto ret0;

 L62948: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case VEC_SELECT:
      goto L22815;
    case UNSPEC:
      goto L62968;
    case VEC_MERGE:
      goto L25008;
    case VEC_DUPLICATE:
      goto L25723;
    case REG:
    case SUBREG:
    case MEM:
      goto L62957;
    default:
      goto ret0;
   }
 L62957: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L38057;
    }
  goto ret0;

 L22815: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L62984;
    case V4DFmode:
      goto L62987;
    case V2DFmode:
      goto L62988;
    default:
      break;
    }
  goto ret0;

 L62984: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L22816;
    }
  goto ret0;

 L22816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22817;
  goto ret0;

 L22817: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22818;
    }
  goto ret0;

 L22818: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22819;
    }
  goto ret0;

 L22819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L22820;
    }
  goto ret0;

 L22820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L22821;
    }
  goto ret0;

 L22821: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6683 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (INTVAL (operands[2]) == INTVAL (operands[3]) - 1))))
    {
      return 2259;  /* avx512dq_vextractf64x2_1_mask */
    }
  goto ret0;

 L62987: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_CONCAT)
    goto L23642;
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L23211;
    }
 L62986: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L23247;
    }
  goto ret0;

 L23642: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L23643;
    }
  goto ret0;

 L23643: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L23644;
    }
  goto ret0;

 L23644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L23645;
  goto ret0;

 L23645: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (GET_CODE (x4) == CONST_INT)
    goto L62989;
  goto ret0;

 L62989: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L23646;
      case 0LL:
        goto L23728;
      default:
        break;
      }
 L62991: ATTRIBUTE_UNUSED_LABEL
  if (const_0_to_1_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L25479;
    }
  goto ret0;

 L23646: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23647;
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L23648;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23648: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23649;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23649: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2320;  /* avx512vl_unpckhpd128_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23728: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23729;
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23729: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L23730;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23730: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L23731;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L23731: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7574 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2326;  /* avx512vl_unpcklpd128_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 1);
  x4 = XVECEXP (x3, 0, 0);
  goto L62991;

 L25479: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_2_to_3_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L25480;
    }
  goto ret0;

 L25480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L25481;
    }
  goto ret0;

 L25481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L25482;
    }
  goto ret0;

 L25482: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8088 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))
    {
      return 2496;  /* sse2_shufpd_v2df_mask */
    }
  goto ret0;

 L23211: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L23212;
  x3 = XEXP (x2, 0);
  goto L62986;

 L23212: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23213;
  x3 = XEXP (x2, 0);
  goto L62986;

 L23213: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23214;
  x3 = XEXP (x2, 0);
  goto L62986;

 L23214: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L23215;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62986;

 L23215: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23216;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62986;

 L23216: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 6979 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && TARGET_AVX512VL && TARGET_AVX512DQ
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))))
    {
      return 2291;  /* vec_extract_lo_v4df_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L62986;

 L23247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L23248;
  goto ret0;

 L23248: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23249;
  goto ret0;

 L23249: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23250;
  goto ret0;

 L23250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L23251;
    }
  goto ret0;

 L23251: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L23252;
    }
  goto ret0;

 L23252: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 7018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && TARGET_AVX512VL && TARGET_AVX512DQ)))
    {
      return 2295;  /* vec_extract_hi_v4df_mask */
    }
  goto ret0;

 L62988: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L42564;
    }
  goto ret0;

 L42564: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) >= 1)
    {
      operands[2] = x3;
      goto L42565;
    }
  goto ret0;

 L42565: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L42566;
    }
  goto ret0;

 L42566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L42567;
    }
  goto ret0;

 L42567: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L42568;
    }
  goto ret0;

 L42568: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (16 == 64 || TARGET_AVX512VL)
   && avx_vpermilp_parallel (operands[2], V2DFmode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 4074;  /* *avx_vpermilpv2df_mask */
    }
  goto ret0;

 L62968: ATTRIBUTE_UNUSED_LABEL
  return recog_112 (x0, insn, pnum_clobbers);

 L25008: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 4
      && XINT (x3, 1) == 157)
    goto L25009;
  goto ret0;

 L25009: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L25010;
    }
  goto ret0;

 L25010: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L25011;
    }
  goto ret0;

 L25011: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L25012;
    }
  goto ret0;

 L25012: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L25013;
    }
  goto ret0;

 L25013: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L25014;
  goto ret0;

 L25014: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L25015;
  goto ret0;

 L25015: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L25016;
    }
 L25077: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[1]))
    goto L25078;
  goto ret0;

 L25016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L25017;
    }
  x2 = XEXP (x1, 1);
  goto L25077;

 L25017: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7857 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2456;  /* avx512f_sfixupimmv2df_maskz_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L25077;

 L25078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L25079;
    }
  goto ret0;

 L25079: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2460;  /* avx512f_sfixupimmv2df_mask */
    }
  goto ret0;

 L25723: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode)
    goto L63011;
  goto ret0;

 L63011: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L41691;
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L25724;
    }
  goto ret0;

 L41691: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L41692;
    }
  goto ret0;

 L41692: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L41693;
  goto ret0;

 L41693: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L41694;
  goto ret0;

 L41694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L41695;
    }
  goto ret0;

 L41695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L41696;
    }
  goto ret0;

 L41696: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3948;  /* avx512vl_vec_dupv2df_mask */
    }
  goto ret0;

 L25724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L25725;
    }
  goto ret0;

 L25725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L25726;
    }
  goto ret0;

 L25726: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 8496 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && TARGET_AVX512VL)))
    {
      return 2519;  /* vec_dupv2df_mask */
    }
 L42090: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4004;  /* avx512vl_vec_dup_gprv2df_mask */
    }
  goto ret0;

 L38057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L38058;
    }
  goto ret0;

 L38058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (const_0_to_3_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L38059;
    }
  goto ret0;

 L38059: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3578;  /* sse4_1_blendpd */
    }
  goto ret0;

 L62930: ATTRIBUTE_UNUSED_LABEL
  return recog_113 (x0, insn, pnum_clobbers);

 L25660: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V4DFmode:
      goto L63056;
    case V2DFmode:
      goto L63057;
    default:
      break;
    }
  goto ret0;

 L63056: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L25661;
  goto ret0;

 L25661: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L25662;
    }
  goto ret0;

 L25662: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L25663;
    }
  goto ret0;

 L25663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L25664;
  goto ret0;

 L25664: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_1_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L25665;
    }
  goto ret0;

 L25665: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_2_to_3_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L25666;
    }
  goto ret0;

 L25666: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8211 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2510;  /* sse2_shufpd_v2df */
    }
  goto ret0;

 L63057: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L42556;
    }
 L63058: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L43718;
    }
  goto ret0;

 L42556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) >= 1)
    {
      operands[2] = x2;
      goto L42557;
    }
  x2 = XEXP (x1, 0);
  goto L63058;

 L42557: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L42558;
    }
  x2 = XEXP (x1, 0);
  goto L63058;

 L42558: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1
   && avx_vpermilp_parallel (operands[2], V2DFmode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 4073;  /* *avx_vpermilpv2df */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L63058;

 L43718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && palignr_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L43719;
    }
  goto ret0;

 L43719: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L43720;
    }
  goto ret0;

 L43720: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17444 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 199 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 4206;  /* *ssse3_palignrv2df_perm */
    }
  goto ret0;

 L25717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L63060;
  goto ret0;

 L63060: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L41683;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L25718;
    }
  goto ret0;

 L41683: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L41684;
    }
  goto ret0;

 L41684: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L41685;
  goto ret0;

 L41685: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16647 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3947;  /* avx512vl_vec_dupv2df */
    }
  goto ret0;

 L25718: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8496 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1))
    {
      return 2518;  /* vec_dupv2df */
    }
 L42082: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16705 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4003;  /* *avx512vl_vec_dup_gprv2df */
    }
  goto ret0;

 L25730: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L25731;
    }
  goto ret0;

 L25731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L25732;
    }
  goto ret0;

 L25732: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2520;  /* *vec_concatv2df */
    }
  goto ret0;

 L40121: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L40122;
    }
  goto ret0;

 L40122: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L40123;
    }
  goto ret0;

 L40123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L40124;
    }
  goto ret0;

 L40124: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15555 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP) && 
#line 195 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3790;  /* xop_pcmov_v2df */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_115 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  if (vsib_mem_operator (x1, V2DFmode))
    {
      operands[5] = x1;
      goto L49817;
    }
 L57070: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L22805;
    }
 L57082: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L11633;
    }
 L57100: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L11885;
    }
 L57116: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L22813;
    }
  goto ret0;

 L49817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L62718;
    case DImode:
      goto L62719;
    default:
      break;
    }
  goto L57070;

 L62718: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49818;
  goto L57070;

 L49818: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49819;
    }
  goto L57070;

 L49819: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L62720;
    case V2DImode:
      goto L62721;
    default:
      break;
    }
  goto L57070;

 L62720: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49820;
    }
  goto L57070;

 L49820: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49821;
    }
  goto L57070;

 L49821: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49822;
  x1 = XEXP (x0, 0);
  goto L57070;

 L49822: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49823;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L49823: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L49824;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L49824: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4519;  /* *avx512f_scattersiv2df */
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L62721: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50372;
    }
  goto L57070;

 L50372: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50373;
    }
  goto L57070;

 L50373: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50374;
  x1 = XEXP (x0, 0);
  goto L57070;

 L50374: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50375;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L50375: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L50376;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L50376: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4543;  /* *avx512f_scatterdiv2df */
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L62719: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49841;
  goto L57070;

 L49841: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49842;
    }
  goto L57070;

 L49842: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L62722;
    case V2DImode:
      goto L62723;
    default:
      break;
    }
  goto L57070;

 L62722: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49843;
    }
  goto L57070;

 L49843: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49844;
    }
  goto L57070;

 L49844: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49845;
  x1 = XEXP (x0, 0);
  goto L57070;

 L49845: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49846;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L49846: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L49847;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L49847: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4520;  /* *avx512f_scattersiv2df */
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L62723: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50395;
    }
  goto L57070;

 L50395: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50396;
    }
  goto L57070;

 L50396: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50397;
  x1 = XEXP (x0, 0);
  goto L57070;

 L50397: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50398;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L50398: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L50399;
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L50399: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4544;  /* *avx512f_scatterdiv2df */
    }
  x1 = XEXP (x0, 0);
  goto L57070;

 L22805: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode)
    goto L62724;
 L11552: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V2DFmode))
    {
      operands[1] = x1;
      goto L11553;
    }
  x1 = XEXP (x0, 0);
  goto L57082;

 L62724: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L22806;
    case VEC_CONCAT:
      goto L25694;
    case VEC_MERGE:
      goto L25711;
    default:
     break;
   }
  goto L11552;

 L22806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DFmode:
      goto L62727;
    case V4DFmode:
      goto L62730;
    default:
      break;
    }
  goto L11552;

 L62727: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L22807;
    }
  goto L11552;

 L22807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L22808;
  goto L11552;

 L22808: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L22809;
    }
  goto L11552;

 L22809: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22810;
    }
  goto L11552;

 L22810: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6683 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (INTVAL (operands[2]) == INTVAL (operands[3]) - 1)))
    {
      return 2258;  /* *avx512dq_vextractf64x2_1 */
    }
  x1 = XEXP (x0, 1);
  goto L11552;

 L62730: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_CONCAT)
    goto L23654;
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L23203;
    }
 L62729: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L23239;
    }
  goto L11552;

 L23654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L23655;
    }
  goto L11552;

 L23655: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L23656;
    }
  goto L11552;

 L23656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L23657;
  goto L11552;

 L23657: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L62731;
  goto L11552;

 L62731: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L23658;
      case 0LL:
        goto L23740;
      default:
        break;
      }
  goto L11552;

 L23658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7442 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_vec_interleave_v2df_operator_ok (operands, 1)))
    {
      return 2321;  /* *vec_interleave_highv2df */
    }
  goto L11552;

 L23740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 7602 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && ix86_vec_interleave_v2df_operator_ok (operands, 0)))
    {
      return 2327;  /* *vec_interleave_lowv2df */
    }
  goto L11552;

 L23203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L23204;
  x2 = XEXP (x1, 0);
  goto L62729;

 L23204: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23205;
  x2 = XEXP (x1, 0);
  goto L62729;

 L23205: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6979 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && 1 && 1
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2290;  /* vec_extract_lo_v4df */
    }
  x2 = XEXP (x1, 0);
  goto L62729;

 L23239: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L23240;
  goto L11552;

 L23240: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23241;
  goto L11552;

 L23241: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && 1))
    {
      return 2294;  /* vec_extract_hi_v4df */
    }
  goto L11552;

 L25694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L62733;
  goto L11552;

 L62733: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L25695;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L25704;
    }
  goto L11552;

 L25695: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L25696;
    }
  goto L11552;

 L25696: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L25697;
  goto L11552;

 L25697: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L25698;
  goto L11552;

 L25698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L25699;
    }
  goto L11552;

 L25699: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8363 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 2515;  /* sse2_loadhpd */
    }
  x1 = XEXP (x0, 1);
  goto L11552;

 L25704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L25705;
  goto L11552;

 L25705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L25706;
    }
  goto L11552;

 L25706: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L25707;
  goto L11552;

 L25707: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 8420 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 2516;  /* sse2_loadlpd */
    }
  goto L11552;

 L25711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L25712;
    }
  goto L11552;

 L25712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L25713;
    }
  goto L11552;

 L25713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 8464 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2517;  /* sse2_movsd */
    }
  goto L11552;

 L11553: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V2DFmode)
       || register_operand (operands[1], V2DFmode))))
    {
      return 1017;  /* *movv2df_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57082;

 L11633: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode)
    goto L62735;
  x1 = XEXP (x0, 0);
  goto L57100;

 L62735: ATTRIBUTE_UNUSED_LABEL
  tem = recog_111 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57100;

 L11885: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode)
    goto L62890;
  x1 = XEXP (x0, 0);
  goto L57116;

 L62890: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11886;
    case UNSPEC:
      goto L62895;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57116;

 L11886: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L62900;
  x1 = XEXP (x0, 0);
  goto L57116;

 L62900: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L62902;
    case VEC_SELECT:
      goto L22759;
    case REG:
    case SUBREG:
      goto L62899;
    default:
      x1 = XEXP (x0, 0);
      goto L57116;
   }
 L62899: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L11887;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L62902: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12105;
  x1 = XEXP (x0, 0);
  goto L57116;

 L12105: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12106;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L12106: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12107;
  x1 = XEXP (x0, 0);
  goto L57116;

 L12107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12108;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L12108: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1227 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1097;  /* avx512vl_storeupd_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L22760;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22760: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22761;
  x1 = XEXP (x0, 0);
  goto L57116;

 L22761: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22762;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22762: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22763;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L22764;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L22765;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22765: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ
   && (INTVAL (operands[2]) % 2 == 0)
   && (INTVAL (operands[2]) == INTVAL (operands[3]) - 1)
   && rtx_equal_p (operands[4], operands[0])))
    {
      return 2254;  /* avx512dq_vextractf64x2_1_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L11887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11888;
  x1 = XEXP (x0, 0);
  goto L57116;

 L11888: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11889;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L11889: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1065;  /* avx512vl_storev2df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L62895: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L62903;
    case 3:
      goto L62905;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L62903: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12059;
    case 103LL:
      goto L12464;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L12059: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L12060;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L12060: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1091;  /* sse2_storeupd */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L12464: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L12465;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L12465: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1154;  /* sse2_movntv2df */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L62905: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44052;
    case 165LL:
      goto L50564;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L44052: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44053;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L44053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L44054;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L44054: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 4236;  /* avx_maskstorepd */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L50564: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L50565;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L50565: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50566;
  x1 = XEXP (x0, 0);
  goto L57116;

 L50566: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50567;
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L50567: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4568;  /* avx512vl_compressstorev2df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57116;

 L22813: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode)
    goto L62907;
  goto ret0;

 L62907: ATTRIBUTE_UNUSED_LABEL
  return recog_114 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_116 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L63109;
    case 1:
      goto L63111;
    case 2:
      goto L63112;
    default:
      break;
    }
  goto ret0;

 L63109: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15340;
    case 151LL:
      goto L15732;
    default:
      break;
    }
  goto ret0;

 L15340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L63116;
    case V16SFmode:
      goto L63117;
    case V16QImode:
      goto L63118;
    case V16HImode:
      goto L63119;
    default:
      break;
    }
  goto ret0;

 L63116: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L15341;
    }
  goto ret0;

 L15341: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L15342;
    }
  goto ret0;

 L15342: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15343;
    }
  goto ret0;

 L15343: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1466;  /* avx512f_cmpv16si3 */
    }
  goto ret0;

 L63117: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L15481;
    }
  goto ret0;

 L15481: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L15482;
    }
  goto ret0;

 L15482: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15483;
    }
  goto ret0;

 L15483: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1482;  /* avx512f_cmpv16sf3 */
    }
  goto ret0;

 L63118: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L15637;
    }
  goto ret0;

 L15637: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L15638;
    }
  goto ret0;

 L15638: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15639;
    }
  goto ret0;

 L15639: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1500;  /* avx512vl_cmpv16qi3 */
    }
  goto ret0;

 L63119: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L15685;
    }
  goto ret0;

 L15685: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L15686;
    }
  goto ret0;

 L15686: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15687;
    }
  goto ret0;

 L15687: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1506;  /* avx512vl_cmpv16hi3 */
    }
  goto ret0;

 L15732: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L63120;
    case V16HImode:
      goto L63121;
    case V16SImode:
      goto L63122;
    default:
      break;
    }
  goto ret0;

 L63120: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L15733;
    }
  goto ret0;

 L15733: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L15734;
    }
  goto ret0;

 L15734: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15735;
    }
  goto ret0;

 L15735: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1512;  /* avx512vl_ucmpv16qi3 */
    }
  goto ret0;

 L63121: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L15781;
    }
  goto ret0;

 L15781: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L15782;
    }
  goto ret0;

 L15782: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15783;
    }
  goto ret0;

 L15783: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1518;  /* avx512vl_ucmpv16hi3 */
    }
  goto ret0;

 L63122: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L15813;
    }
  goto ret0;

 L15813: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L15814;
    }
  goto ret0;

 L15814: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15815;
    }
  goto ret0;

 L15815: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1522;  /* avx512f_ucmpv16si3 */
    }
  goto ret0;

 L63111: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 187)
    goto L21922;
  goto ret0;

 L21922: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L63123;
    case V16HImode:
      goto L63124;
    case V16SImode:
      goto L63125;
    default:
      break;
    }
  goto ret0;

 L63123: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L21923;
    }
  goto ret0;

 L21923: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4985 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2178;  /* avx512vl_cvtb2maskv16qi */
    }
  goto ret0;

 L63124: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L21938;
    }
  goto ret0;

 L21938: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4985 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2181;  /* avx512vl_cvtw2maskv16hi */
    }
  goto ret0;

 L63125: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L21948;
    }
  goto ret0;

 L21948: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4995 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 2183;  /* avx512f_cvtd2maskv16si */
    }
  goto ret0;

 L63112: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 167LL:
      goto L31634;
    case 168LL:
      goto L31842;
    case 152LL:
      goto L32906;
    case 153LL:
      goto L33074;
    default:
      break;
    }
  goto ret0;

 L31634: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L63126;
    case V16HImode:
      goto L63127;
    case V16SImode:
      goto L63128;
    default:
      break;
    }
  goto ret0;

 L63126: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31635;
    }
  goto ret0;

 L31635: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31636;
    }
  goto ret0;

 L31636: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V16QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3105;  /* avx512vl_eqv16qi3_1 */
    }
  goto ret0;

 L63127: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31677;
    }
  goto ret0;

 L31677: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31678;
    }
  goto ret0;

 L31678: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V16HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3111;  /* avx512vl_eqv16hi3_1 */
    }
  goto ret0;

 L63128: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L31705;
    }
  goto ret0;

 L31705: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L31706;
    }
  goto ret0;

 L31706: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V16SImode, operands)))
    {
      return 3115;  /* avx512f_eqv16si3_1 */
    }
  goto ret0;

 L31842: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16SImode:
      goto L63129;
    case V16QImode:
      goto L63130;
    case V16HImode:
      goto L63131;
    default:
      break;
    }
  goto ret0;

 L63129: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L31843;
    }
  goto ret0;

 L31843: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L31844;
    }
  goto ret0;

 L31844: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3136;  /* avx512f_gtv16si3 */
    }
  goto ret0;

 L63130: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L31941;
    }
  goto ret0;

 L31941: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L31942;
    }
  goto ret0;

 L31942: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3150;  /* avx512vl_gtv16qi3 */
    }
  goto ret0;

 L63131: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L31983;
    }
  goto ret0;

 L31983: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L31984;
    }
  goto ret0;

 L31984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3156;  /* avx512vl_gtv16hi3 */
    }
  goto ret0;

 L32906: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L63132;
    case V16HImode:
      goto L63133;
    case V16SImode:
      goto L63134;
    default:
      break;
    }
  goto ret0;

 L63132: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L32907;
    }
  goto ret0;

 L32907: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L32908;
    }
  goto ret0;

 L32908: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3273;  /* avx512vl_testmv16qi3 */
    }
  goto ret0;

 L63133: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L32949;
    }
  goto ret0;

 L32949: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L32950;
    }
  goto ret0;

 L32950: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3279;  /* avx512vl_testmv16hi3 */
    }
  goto ret0;

 L63134: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L32977;
    }
  goto ret0;

 L32977: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L32978;
    }
  goto ret0;

 L32978: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3283;  /* avx512f_testmv16si3 */
    }
  goto ret0;

 L33074: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V16QImode:
      goto L63135;
    case V16HImode:
      goto L63136;
    case V16SImode:
      goto L63137;
    default:
      break;
    }
  goto ret0;

 L63135: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L33075;
    }
  goto ret0;

 L33075: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L33076;
    }
  goto ret0;

 L33076: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3297;  /* avx512vl_testnmv16qi3 */
    }
  goto ret0;

 L63136: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L33117;
    }
  goto ret0;

 L33117: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L33118;
    }
  goto ret0;

 L33118: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3303;  /* avx512vl_testnmv16hi3 */
    }
  goto ret0;

 L63137: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L33145;
    }
  goto ret0;

 L33145: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[2] = x2;
      goto L33146;
    }
  goto ret0;

 L33146: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3307;  /* avx512f_testnmv16si3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_117 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L63150;
    case 2:
      goto L63152;
    default:
      break;
    }
  goto ret0;

 L63150: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 135LL:
      goto L15348;
    case 151LL:
      goto L15740;
    default:
      break;
    }
  goto ret0;

 L15348: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L63156;
    case V16SFmode:
      goto L63157;
    case V16QImode:
      goto L63158;
    case V16HImode:
      goto L63159;
    default:
      break;
    }
  goto ret0;

 L63156: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L15349;
    }
  goto ret0;

 L15349: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L15350;
    }
  goto ret0;

 L15350: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15351;
    }
  goto ret0;

 L15351: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15352;
    }
  goto ret0;

 L15352: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1)))
    {
      return 1467;  /* avx512f_cmpv16si3_mask */
    }
  goto ret0;

 L63157: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L15489;
    }
  goto ret0;

 L15489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L15490;
    }
  goto ret0;

 L15490: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15491;
    }
  goto ret0;

 L15491: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15492;
    }
  goto ret0;

 L15492: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1)))
    {
      return 1483;  /* avx512f_cmpv16sf3_mask */
    }
  goto ret0;

 L63158: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L15645;
    }
  goto ret0;

 L15645: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L15646;
    }
  goto ret0;

 L15646: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15647;
    }
  goto ret0;

 L15647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15648;
    }
  goto ret0;

 L15648: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1501;  /* avx512vl_cmpv16qi3_mask */
    }
  goto ret0;

 L63159: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L15693;
    }
  goto ret0;

 L15693: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L15694;
    }
  goto ret0;

 L15694: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15695;
    }
  goto ret0;

 L15695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15696;
    }
  goto ret0;

 L15696: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1507;  /* avx512vl_cmpv16hi3_mask */
    }
  goto ret0;

 L15740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L63160;
    case V16HImode:
      goto L63161;
    case V16SImode:
      goto L63162;
    default:
      break;
    }
  goto ret0;

 L63160: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L15741;
    }
  goto ret0;

 L15741: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L15742;
    }
  goto ret0;

 L15742: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15743;
    }
  goto ret0;

 L15743: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15744;
    }
  goto ret0;

 L15744: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1513;  /* avx512vl_ucmpv16qi3_mask */
    }
  goto ret0;

 L63161: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L15789;
    }
  goto ret0;

 L15789: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L15790;
    }
  goto ret0;

 L15790: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15791;
    }
  goto ret0;

 L15791: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15792;
    }
  goto ret0;

 L15792: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1519;  /* avx512vl_ucmpv16hi3_mask */
    }
  goto ret0;

 L63162: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L15821;
    }
  goto ret0;

 L15821: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L15822;
    }
  goto ret0;

 L15822: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15823;
    }
  goto ret0;

 L15823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L15824;
    }
  goto ret0;

 L15824: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1523;  /* avx512f_ucmpv16si3_mask */
    }
  goto ret0;

 L63152: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 167LL:
      goto L31641;
    case 168LL:
      goto L31849;
    case 152LL:
      goto L32913;
    case 153LL:
      goto L33081;
    default:
      break;
    }
  goto ret0;

 L31641: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L63163;
    case V16HImode:
      goto L63164;
    case V16SImode:
      goto L63165;
    default:
      break;
    }
  goto ret0;

 L63163: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31642;
    }
  goto ret0;

 L31642: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31643;
    }
  goto ret0;

 L31643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L31644;
    }
  goto ret0;

 L31644: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V16QImode, operands)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3106;  /* avx512vl_eqv16qi3_mask_1 */
    }
  goto ret0;

 L63164: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L31684;
    }
  goto ret0;

 L31684: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L31685;
    }
  goto ret0;

 L31685: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L31686;
    }
  goto ret0;

 L31686: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V16HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3112;  /* avx512vl_eqv16hi3_mask_1 */
    }
  goto ret0;

 L63165: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L31712;
    }
  goto ret0;

 L31712: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L31713;
    }
  goto ret0;

 L31713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L31714;
    }
  goto ret0;

 L31714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V16SImode, operands))))
    {
      return 3116;  /* avx512f_eqv16si3_mask_1 */
    }
  goto ret0;

 L31849: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L63166;
    case V16QImode:
      goto L63167;
    case V16HImode:
      goto L63168;
    default:
      break;
    }
  goto ret0;

 L63166: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L31850;
    }
  goto ret0;

 L31850: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L31851;
    }
  goto ret0;

 L31851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L31852;
    }
  goto ret0;

 L31852: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3137;  /* avx512f_gtv16si3_mask */
    }
  goto ret0;

 L63167: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L31948;
    }
  goto ret0;

 L31948: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L31949;
    }
  goto ret0;

 L31949: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L31950;
    }
  goto ret0;

 L31950: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3151;  /* avx512vl_gtv16qi3_mask */
    }
  goto ret0;

 L63168: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L31990;
    }
  goto ret0;

 L31990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L31991;
    }
  goto ret0;

 L31991: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L31992;
    }
  goto ret0;

 L31992: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3157;  /* avx512vl_gtv16hi3_mask */
    }
  goto ret0;

 L32913: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L63169;
    case V16HImode:
      goto L63170;
    case V16SImode:
      goto L63171;
    default:
      break;
    }
  goto ret0;

 L63169: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L32914;
    }
  goto ret0;

 L32914: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L32915;
    }
  goto ret0;

 L32915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L32916;
    }
  goto ret0;

 L32916: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3274;  /* avx512vl_testmv16qi3_mask */
    }
  goto ret0;

 L63170: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L32956;
    }
  goto ret0;

 L32956: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L32957;
    }
  goto ret0;

 L32957: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L32958;
    }
  goto ret0;

 L32958: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3280;  /* avx512vl_testmv16hi3_mask */
    }
  goto ret0;

 L63171: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L32984;
    }
  goto ret0;

 L32984: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L32985;
    }
  goto ret0;

 L32985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L32986;
    }
  goto ret0;

 L32986: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3284;  /* avx512f_testmv16si3_mask */
    }
  goto ret0;

 L33081: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16QImode:
      goto L63172;
    case V16HImode:
      goto L63173;
    case V16SImode:
      goto L63174;
    default:
      break;
    }
  goto ret0;

 L63172: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L33082;
    }
  goto ret0;

 L33082: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L33083;
    }
  goto ret0;

 L33083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L33084;
    }
  goto ret0;

 L33084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3298;  /* avx512vl_testnmv16qi3_mask */
    }
  goto ret0;

 L63173: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L33124;
    }
  goto ret0;

 L33124: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16HImode))
    {
      operands[2] = x3;
      goto L33125;
    }
  goto ret0;

 L33125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L33126;
    }
  goto ret0;

 L33126: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3304;  /* avx512vl_testnmv16hi3_mask */
    }
  goto ret0;

 L63174: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L33152;
    }
  goto ret0;

 L33152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L33153;
    }
  goto ret0;

 L33153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L33154;
    }
  goto ret0;

 L33154: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3308;  /* avx512f_testnmv16si3_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_118 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L63197;
    case 1:
      goto L63199;
    case 2:
      goto L63200;
    default:
      break;
    }
  goto ret0;

 L63197: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15378;
    case 151LL:
      goto L15796;
    default:
      break;
    }
  goto ret0;

 L15378: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L63204;
    case V4SImode:
      goto L63205;
    case V8DImode:
      goto L63206;
    case V4DImode:
      goto L63207;
    case V2DImode:
      goto L63208;
    case V8SFmode:
      goto L63209;
    case V4SFmode:
      goto L63210;
    case V8DFmode:
      goto L63211;
    case V4DFmode:
      goto L63212;
    case V2DFmode:
      goto L63213;
    case V8HImode:
      goto L63214;
    default:
      break;
    }
  goto ret0;

 L63204: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L15379;
    }
  goto ret0;

 L15379: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L15380;
    }
  goto ret0;

 L15380: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15381;
    }
  goto ret0;

 L15381: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1470;  /* avx512vl_cmpv8si3 */
    }
  goto ret0;

 L63205: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L15395;
    }
  goto ret0;

 L15395: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L15396;
    }
  goto ret0;

 L15396: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15397;
    }
  goto ret0;

 L15397: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1472;  /* avx512vl_cmpv4si3 */
    }
  goto ret0;

 L63206: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L15411;
    }
  goto ret0;

 L15411: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L15412;
    }
  goto ret0;

 L15412: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15413;
    }
  goto ret0;

 L15413: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1474;  /* avx512f_cmpv8di3 */
    }
  goto ret0;

 L63207: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L15449;
    }
  goto ret0;

 L15449: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L15450;
    }
  goto ret0;

 L15450: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15451;
    }
  goto ret0;

 L15451: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1478;  /* avx512vl_cmpv4di3 */
    }
  goto ret0;

 L63208: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L15465;
    }
  goto ret0;

 L15465: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L15466;
    }
  goto ret0;

 L15466: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15467;
    }
  goto ret0;

 L15467: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1480;  /* avx512vl_cmpv2di3 */
    }
  goto ret0;

 L63209: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L15519;
    }
  goto ret0;

 L15519: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L15520;
    }
  goto ret0;

 L15520: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15521;
    }
  goto ret0;

 L15521: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1486;  /* avx512vl_cmpv8sf3 */
    }
  goto ret0;

 L63210: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L15535;
    }
  goto ret0;

 L15535: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L15536;
    }
  goto ret0;

 L15536: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15537;
    }
  goto ret0;

 L15537: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1488;  /* avx512vl_cmpv4sf3 */
    }
  goto ret0;

 L63211: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L15551;
    }
  goto ret0;

 L15551: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L15552;
    }
  goto ret0;

 L15552: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15553;
    }
  goto ret0;

 L15553: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1))
    {
      return 1490;  /* avx512f_cmpv8df3 */
    }
  goto ret0;

 L63212: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L15589;
    }
  goto ret0;

 L15589: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L15590;
    }
  goto ret0;

 L15590: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15591;
    }
  goto ret0;

 L15591: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1494;  /* avx512vl_cmpv4df3 */
    }
  goto ret0;

 L63213: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L15605;
    }
  goto ret0;

 L15605: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L15606;
    }
  goto ret0;

 L15606: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_31_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15607;
    }
  goto ret0;

 L15607: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1496;  /* avx512vl_cmpv2df3 */
    }
  goto ret0;

 L63214: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L15701;
    }
  goto ret0;

 L15701: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L15702;
    }
  goto ret0;

 L15702: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15703;
    }
  goto ret0;

 L15703: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1508;  /* avx512vl_cmpv8hi3 */
    }
  goto ret0;

 L15796: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8HImode:
      goto L63215;
    case V8SImode:
      goto L63216;
    case V4SImode:
      goto L63217;
    case V8DImode:
      goto L63218;
    case V4DImode:
      goto L63219;
    case V2DImode:
      goto L63220;
    default:
      break;
    }
  goto ret0;

 L63215: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L15797;
    }
  goto ret0;

 L15797: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L15798;
    }
  goto ret0;

 L15798: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15799;
    }
  goto ret0;

 L15799: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1520;  /* avx512vl_ucmpv8hi3 */
    }
  goto ret0;

 L63216: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L15829;
    }
  goto ret0;

 L15829: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L15830;
    }
  goto ret0;

 L15830: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15831;
    }
  goto ret0;

 L15831: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1524;  /* avx512vl_ucmpv8si3 */
    }
  goto ret0;

 L63217: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L15845;
    }
  goto ret0;

 L15845: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L15846;
    }
  goto ret0;

 L15846: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15847;
    }
  goto ret0;

 L15847: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1526;  /* avx512vl_ucmpv4si3 */
    }
  goto ret0;

 L63218: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L15861;
    }
  goto ret0;

 L15861: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L15862;
    }
  goto ret0;

 L15862: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15863;
    }
  goto ret0;

 L15863: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1528;  /* avx512f_ucmpv8di3 */
    }
  goto ret0;

 L63219: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L15877;
    }
  goto ret0;

 L15877: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L15878;
    }
  goto ret0;

 L15878: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15879;
    }
  goto ret0;

 L15879: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1530;  /* avx512vl_ucmpv4di3 */
    }
  goto ret0;

 L63220: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L15893;
    }
  goto ret0;

 L15893: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L15894;
    }
  goto ret0;

 L15894: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15895;
    }
  goto ret0;

 L15895: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1532;  /* avx512vl_ucmpv2di3 */
    }
  goto ret0;

 L63199: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 187)
    goto L21942;
  goto ret0;

 L21942: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8HImode:
      goto L63221;
    case V8SImode:
      goto L63222;
    case V4SImode:
      goto L63223;
    case V8DImode:
      goto L63224;
    case V4DImode:
      goto L63225;
    case V2DImode:
      goto L63226;
    default:
      break;
    }
  goto ret0;

 L63221: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L21943;
    }
  goto ret0;

 L21943: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4985 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2182;  /* avx512vl_cvtw2maskv8hi */
    }
  goto ret0;

 L63222: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L21953;
    }
  goto ret0;

 L21953: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4995 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2184;  /* avx512vl_cvtd2maskv8si */
    }
  goto ret0;

 L63223: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L21958;
    }
  goto ret0;

 L21958: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4995 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2185;  /* avx512vl_cvtd2maskv4si */
    }
  goto ret0;

 L63224: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L21963;
    }
  goto ret0;

 L21963: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4995 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 2186;  /* avx512f_cvtq2maskv8di */
    }
  goto ret0;

 L63225: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L21968;
    }
  goto ret0;

 L21968: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4995 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2187;  /* avx512vl_cvtq2maskv4di */
    }
  goto ret0;

 L63226: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L21973;
    }
  goto ret0;

 L21973: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4995 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 2188;  /* avx512vl_cvtq2maskv2di */
    }
  goto ret0;

 L63200: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 167LL:
      goto L31690;
    case 168LL:
      goto L31856;
    case 152LL:
      goto L32962;
    case 153LL:
      goto L33130;
    default:
      break;
    }
  goto ret0;

 L31690: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8HImode:
      goto L63227;
    case V8SImode:
      goto L63228;
    case V4SImode:
      goto L63229;
    case V8DImode:
      goto L63230;
    case V4DImode:
      goto L63231;
    case V2DImode:
      goto L63232;
    default:
      break;
    }
  goto ret0;

 L63227: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31691;
    }
  goto ret0;

 L31691: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31692;
    }
  goto ret0;

 L31692: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V8HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3113;  /* avx512vl_eqv8hi3_1 */
    }
  goto ret0;

 L63228: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L31719;
    }
  goto ret0;

 L31719: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L31720;
    }
  goto ret0;

 L31720: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3117;  /* avx512vl_eqv8si3_1 */
    }
  goto ret0;

 L63229: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L31733;
    }
  goto ret0;

 L31733: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L31734;
    }
  goto ret0;

 L31734: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3119;  /* avx512vl_eqv4si3_1 */
    }
  goto ret0;

 L63230: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L31747;
    }
  goto ret0;

 L31747: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L31748;
    }
  goto ret0;

 L31748: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V8DImode, operands)))
    {
      return 3121;  /* avx512f_eqv8di3_1 */
    }
  goto ret0;

 L63231: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L31761;
    }
  goto ret0;

 L31761: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L31762;
    }
  goto ret0;

 L31762: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3123;  /* avx512vl_eqv4di3_1 */
    }
  goto ret0;

 L63232: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31775;
    }
  goto ret0;

 L31775: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31776;
    }
  goto ret0;

 L31776: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3125;  /* avx512vl_eqv2di3_1 */
    }
  goto ret0;

 L31856: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SImode:
      goto L63233;
    case V4SImode:
      goto L63234;
    case V8DImode:
      goto L63235;
    case V4DImode:
      goto L63236;
    case V2DImode:
      goto L63237;
    case V8HImode:
      goto L63238;
    default:
      break;
    }
  goto ret0;

 L63233: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L31857;
    }
  goto ret0;

 L31857: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L31858;
    }
  goto ret0;

 L31858: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3138;  /* avx512vl_gtv8si3 */
    }
  goto ret0;

 L63234: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L31871;
    }
  goto ret0;

 L31871: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L31872;
    }
  goto ret0;

 L31872: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3140;  /* avx512vl_gtv4si3 */
    }
  goto ret0;

 L63235: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L31885;
    }
  goto ret0;

 L31885: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L31886;
    }
  goto ret0;

 L31886: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3142;  /* avx512f_gtv8di3 */
    }
  goto ret0;

 L63236: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L31899;
    }
  goto ret0;

 L31899: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L31900;
    }
  goto ret0;

 L31900: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3144;  /* avx512vl_gtv4di3 */
    }
  goto ret0;

 L63237: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L31913;
    }
  goto ret0;

 L31913: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L31914;
    }
  goto ret0;

 L31914: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3146;  /* avx512vl_gtv2di3 */
    }
  goto ret0;

 L63238: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L31997;
    }
  goto ret0;

 L31997: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L31998;
    }
  goto ret0;

 L31998: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3158;  /* avx512vl_gtv8hi3 */
    }
  goto ret0;

 L32962: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8HImode:
      goto L63239;
    case V8SImode:
      goto L63240;
    case V4SImode:
      goto L63241;
    case V8DImode:
      goto L63242;
    case V4DImode:
      goto L63243;
    case V2DImode:
      goto L63244;
    default:
      break;
    }
  goto ret0;

 L63239: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L32963;
    }
  goto ret0;

 L32963: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L32964;
    }
  goto ret0;

 L32964: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3281;  /* avx512vl_testmv8hi3 */
    }
  goto ret0;

 L63240: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L32991;
    }
  goto ret0;

 L32991: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L32992;
    }
  goto ret0;

 L32992: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3285;  /* avx512vl_testmv8si3 */
    }
  goto ret0;

 L63241: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L33005;
    }
  goto ret0;

 L33005: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L33006;
    }
  goto ret0;

 L33006: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3287;  /* avx512vl_testmv4si3 */
    }
  goto ret0;

 L63242: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L33019;
    }
  goto ret0;

 L33019: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L33020;
    }
  goto ret0;

 L33020: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3289;  /* avx512f_testmv8di3 */
    }
  goto ret0;

 L63243: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L33033;
    }
  goto ret0;

 L33033: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L33034;
    }
  goto ret0;

 L33034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3291;  /* avx512vl_testmv4di3 */
    }
  goto ret0;

 L63244: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L33047;
    }
  goto ret0;

 L33047: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L33048;
    }
  goto ret0;

 L33048: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3293;  /* avx512vl_testmv2di3 */
    }
  goto ret0;

 L33130: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8HImode:
      goto L63245;
    case V8SImode:
      goto L63246;
    case V4SImode:
      goto L63247;
    case V8DImode:
      goto L63248;
    case V4DImode:
      goto L63249;
    case V2DImode:
      goto L63250;
    default:
      break;
    }
  goto ret0;

 L63245: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L33131;
    }
  goto ret0;

 L33131: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8HImode))
    {
      operands[2] = x2;
      goto L33132;
    }
  goto ret0;

 L33132: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3305;  /* avx512vl_testnmv8hi3 */
    }
  goto ret0;

 L63246: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L33159;
    }
  goto ret0;

 L33159: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[2] = x2;
      goto L33160;
    }
  goto ret0;

 L33160: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3309;  /* avx512vl_testnmv8si3 */
    }
  goto ret0;

 L63247: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L33173;
    }
  goto ret0;

 L33173: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L33174;
    }
  goto ret0;

 L33174: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3311;  /* avx512vl_testnmv4si3 */
    }
  goto ret0;

 L63248: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L33187;
    }
  goto ret0;

 L33187: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[2] = x2;
      goto L33188;
    }
  goto ret0;

 L33188: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 3313;  /* avx512f_testnmv8di3 */
    }
  goto ret0;

 L63249: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L33201;
    }
  goto ret0;

 L33201: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[2] = x2;
      goto L33202;
    }
  goto ret0;

 L33202: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3315;  /* avx512vl_testnmv4di3 */
    }
  goto ret0;

 L63250: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L33215;
    }
  goto ret0;

 L33215: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L33216;
    }
  goto ret0;

 L33216: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 3317;  /* avx512vl_testnmv2di3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_119 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XINT (x2, 1))
    {
    case 135LL:
      goto L15386;
    case 151LL:
      goto L15804;
    default:
      break;
    }
  goto ret0;

 L15386: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L63269;
    case V4SImode:
      goto L63270;
    case V8DImode:
      goto L63271;
    case V4DImode:
      goto L63272;
    case V2DImode:
      goto L63273;
    case V8SFmode:
      goto L63274;
    case V4SFmode:
      goto L63275;
    case V8DFmode:
      goto L63276;
    case V4DFmode:
      goto L63277;
    case V2DFmode:
      goto L63278;
    case V8HImode:
      goto L63279;
    default:
      break;
    }
  goto ret0;

 L63269: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L15387;
    }
  goto ret0;

 L15387: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L15388;
    }
  goto ret0;

 L15388: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15389;
    }
  goto ret0;

 L15389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15390;
    }
  goto ret0;

 L15390: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1471;  /* avx512vl_cmpv8si3_mask */
    }
  goto ret0;

 L63270: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L15403;
    }
  goto ret0;

 L15403: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L15404;
    }
  goto ret0;

 L15404: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15405;
    }
  goto ret0;

 L15405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15406;
    }
  goto ret0;

 L15406: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 175 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1473;  /* avx512vl_cmpv4si3_mask */
    }
  goto ret0;

 L63271: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L15419;
    }
  goto ret0;

 L15419: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L15420;
    }
  goto ret0;

 L15420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15421;
    }
  goto ret0;

 L15421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15422;
    }
  goto ret0;

 L15422: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1)))
    {
      return 1475;  /* avx512f_cmpv8di3_mask */
    }
  goto ret0;

 L63272: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L15457;
    }
  goto ret0;

 L15457: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L15458;
    }
  goto ret0;

 L15458: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15459;
    }
  goto ret0;

 L15459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15460;
    }
  goto ret0;

 L15460: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1479;  /* avx512vl_cmpv4di3_mask */
    }
  goto ret0;

 L63273: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L15473;
    }
  goto ret0;

 L15473: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L15474;
    }
  goto ret0;

 L15474: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15475;
    }
  goto ret0;

 L15475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15476;
    }
  goto ret0;

 L15476: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1481;  /* avx512vl_cmpv2di3_mask */
    }
  goto ret0;

 L63274: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L15527;
    }
  goto ret0;

 L15527: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L15528;
    }
  goto ret0;

 L15528: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15529;
    }
  goto ret0;

 L15529: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15530;
    }
  goto ret0;

 L15530: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1487;  /* avx512vl_cmpv8sf3_mask */
    }
  goto ret0;

 L63275: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L15543;
    }
  goto ret0;

 L15543: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L15544;
    }
  goto ret0;

 L15544: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15545;
    }
  goto ret0;

 L15545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L63281;
 L15912: ATTRIBUTE_UNUSED_LABEL
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1534;  /* avx512f_vmcmpv4sf3 */
    }
  goto ret0;

 L63281: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == AND)
    goto L15953;
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15546;
    }
  goto L15912;

 L15953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L15954;
    }
  goto L15912;

 L15954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2588 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1538;  /* avx512f_vmcmpv4sf3_mask */
    }
  goto L15912;

 L15546: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 177 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1489;  /* avx512vl_cmpv4sf3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L15912;

 L63276: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L15559;
    }
  goto ret0;

 L15559: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L15560;
    }
  goto ret0;

 L15560: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15561;
    }
  goto ret0;

 L15561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15562;
    }
  goto ret0;

 L15562: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1)))
    {
      return 1491;  /* avx512f_cmpv8df3_mask */
    }
  goto ret0;

 L63277: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L15597;
    }
  goto ret0;

 L15597: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L15598;
    }
  goto ret0;

 L15598: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15599;
    }
  goto ret0;

 L15599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15600;
    }
  goto ret0;

 L15600: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1495;  /* avx512vl_cmpv4df3_mask */
    }
  goto ret0;

 L63278: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L15613;
    }
  goto ret0;

 L15613: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L15614;
    }
  goto ret0;

 L15614: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15615;
    }
  goto ret0;

 L15615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L63283;
 L15932: ATTRIBUTE_UNUSED_LABEL
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 2570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1536;  /* avx512f_vmcmpv2df3 */
    }
  goto ret0;

 L63283: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == AND)
    goto L15977;
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15616;
    }
  goto L15932;

 L15977: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L15978;
    }
  goto L15932;

 L15978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 2588 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1540;  /* avx512f_vmcmpv2df3_mask */
    }
  goto L15932;

 L15616: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1) && 
#line 178 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1497;  /* avx512vl_cmpv2df3_mask */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L15932;

 L63279: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L15709;
    }
  goto ret0;

 L15709: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L15710;
    }
  goto ret0;

 L15710: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15711;
    }
  goto ret0;

 L15711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15712;
    }
  goto ret0;

 L15712: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1509;  /* avx512vl_cmpv8hi3_mask */
    }
  goto ret0;

 L15804: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L63284;
    case V8SImode:
      goto L63285;
    case V4SImode:
      goto L63286;
    case V8DImode:
      goto L63287;
    case V4DImode:
      goto L63288;
    case V2DImode:
      goto L63289;
    default:
      break;
    }
  goto ret0;

 L63284: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L15805;
    }
  goto ret0;

 L15805: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L15806;
    }
  goto ret0;

 L15806: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15807;
    }
  goto ret0;

 L15807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15808;
    }
  goto ret0;

 L15808: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1521;  /* avx512vl_ucmpv8hi3_mask */
    }
  goto ret0;

 L63285: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L15837;
    }
  goto ret0;

 L15837: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L15838;
    }
  goto ret0;

 L15838: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15839;
    }
  goto ret0;

 L15839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15840;
    }
  goto ret0;

 L15840: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1525;  /* avx512vl_ucmpv8si3_mask */
    }
  goto ret0;

 L63286: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L15853;
    }
  goto ret0;

 L15853: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L15854;
    }
  goto ret0;

 L15854: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15855;
    }
  goto ret0;

 L15855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15856;
    }
  goto ret0;

 L15856: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1527;  /* avx512vl_ucmpv4si3_mask */
    }
  goto ret0;

 L63287: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L15869;
    }
  goto ret0;

 L15869: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L15870;
    }
  goto ret0;

 L15870: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15871;
    }
  goto ret0;

 L15871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15872;
    }
  goto ret0;

 L15872: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1529;  /* avx512f_ucmpv8di3_mask */
    }
  goto ret0;

 L63288: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L15885;
    }
  goto ret0;

 L15885: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L15886;
    }
  goto ret0;

 L15886: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15887;
    }
  goto ret0;

 L15887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15888;
    }
  goto ret0;

 L15888: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1531;  /* avx512vl_ucmpv4di3_mask */
    }
  goto ret0;

 L63289: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L15901;
    }
  goto ret0;

 L15901: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L15902;
    }
  goto ret0;

 L15902: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15903;
    }
  goto ret0;

 L15903: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[4] = x2;
      goto L15904;
    }
  goto ret0;

 L15904: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2554 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1533;  /* avx512vl_ucmpv2di3_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_120 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  switch (XINT (x2, 1))
    {
    case 167LL:
      goto L31697;
    case 168LL:
      goto L31863;
    case 152LL:
      goto L32969;
    case 153LL:
      goto L33137;
    default:
      break;
    }
  goto ret0;

 L31697: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L63290;
    case V8SImode:
      goto L63291;
    case V4SImode:
      goto L63292;
    case V8DImode:
      goto L63293;
    case V4DImode:
      goto L63294;
    case V2DImode:
      goto L63295;
    default:
      break;
    }
  goto ret0;

 L63290: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L31698;
    }
  goto ret0;

 L31698: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L31699;
    }
  goto ret0;

 L31699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31700;
    }
  goto ret0;

 L31700: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V8HImode, operands)) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3114;  /* avx512vl_eqv8hi3_mask_1 */
    }
  goto ret0;

 L63291: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L31726;
    }
  goto ret0;

 L31726: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L31727;
    }
  goto ret0;

 L31727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31728;
    }
  goto ret0;

 L31728: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V8SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3118;  /* avx512vl_eqv8si3_mask_1 */
    }
  goto ret0;

 L63292: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L31740;
    }
  goto ret0;

 L31740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L31741;
    }
  goto ret0;

 L31741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31742;
    }
  goto ret0;

 L31742: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V4SImode, operands)) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3120;  /* avx512vl_eqv4si3_mask_1 */
    }
  goto ret0;

 L63293: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L31754;
    }
  goto ret0;

 L31754: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L31755;
    }
  goto ret0;

 L31755: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31756;
    }
  goto ret0;

 L31756: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V8DImode, operands))))
    {
      return 3122;  /* avx512f_eqv8di3_mask_1 */
    }
  goto ret0;

 L63294: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L31768;
    }
  goto ret0;

 L31768: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L31769;
    }
  goto ret0;

 L31769: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31770;
    }
  goto ret0;

 L31770: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V4DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3124;  /* avx512vl_eqv4di3_mask_1 */
    }
  goto ret0;

 L63295: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L31782;
    }
  goto ret0;

 L31782: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L31783;
    }
  goto ret0;

 L31783: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31784;
    }
  goto ret0;

 L31784: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V2DImode, operands)) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3126;  /* avx512vl_eqv2di3_mask_1 */
    }
  goto ret0;

 L31863: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L63296;
    case V4SImode:
      goto L63297;
    case V8DImode:
      goto L63298;
    case V4DImode:
      goto L63299;
    case V2DImode:
      goto L63300;
    case V8HImode:
      goto L63301;
    default:
      break;
    }
  goto ret0;

 L63296: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L31864;
    }
  goto ret0;

 L31864: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L31865;
    }
  goto ret0;

 L31865: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31866;
    }
  goto ret0;

 L31866: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3139;  /* avx512vl_gtv8si3_mask */
    }
  goto ret0;

 L63297: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L31878;
    }
  goto ret0;

 L31878: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L31879;
    }
  goto ret0;

 L31879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31880;
    }
  goto ret0;

 L31880: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3141;  /* avx512vl_gtv4si3_mask */
    }
  goto ret0;

 L63298: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L31892;
    }
  goto ret0;

 L31892: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L31893;
    }
  goto ret0;

 L31893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31894;
    }
  goto ret0;

 L31894: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3143;  /* avx512f_gtv8di3_mask */
    }
  goto ret0;

 L63299: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L31906;
    }
  goto ret0;

 L31906: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L31907;
    }
  goto ret0;

 L31907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31908;
    }
  goto ret0;

 L31908: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3145;  /* avx512vl_gtv4di3_mask */
    }
  goto ret0;

 L63300: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L31920;
    }
  goto ret0;

 L31920: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L31921;
    }
  goto ret0;

 L31921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L31922;
    }
  goto ret0;

 L31922: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10515 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3147;  /* avx512vl_gtv2di3_mask */
    }
  goto ret0;

 L63301: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L32004;
    }
  goto ret0;

 L32004: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L32005;
    }
  goto ret0;

 L32005: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L32006;
    }
  goto ret0;

 L32006: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3159;  /* avx512vl_gtv8hi3_mask */
    }
  goto ret0;

 L32969: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L63302;
    case V8SImode:
      goto L63303;
    case V4SImode:
      goto L63304;
    case V8DImode:
      goto L63305;
    case V4DImode:
      goto L63306;
    case V2DImode:
      goto L63307;
    default:
      break;
    }
  goto ret0;

 L63302: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L32970;
    }
  goto ret0;

 L32970: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L32971;
    }
  goto ret0;

 L32971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L32972;
    }
  goto ret0;

 L32972: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3282;  /* avx512vl_testmv8hi3_mask */
    }
  goto ret0;

 L63303: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L32998;
    }
  goto ret0;

 L32998: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L32999;
    }
  goto ret0;

 L32999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33000;
    }
  goto ret0;

 L33000: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3286;  /* avx512vl_testmv8si3_mask */
    }
  goto ret0;

 L63304: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L33012;
    }
  goto ret0;

 L33012: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L33013;
    }
  goto ret0;

 L33013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33014;
    }
  goto ret0;

 L33014: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3288;  /* avx512vl_testmv4si3_mask */
    }
  goto ret0;

 L63305: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L33026;
    }
  goto ret0;

 L33026: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L33027;
    }
  goto ret0;

 L33027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33028;
    }
  goto ret0;

 L33028: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3290;  /* avx512f_testmv8di3_mask */
    }
  goto ret0;

 L63306: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L33040;
    }
  goto ret0;

 L33040: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L33041;
    }
  goto ret0;

 L33041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33042;
    }
  goto ret0;

 L33042: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3292;  /* avx512vl_testmv4di3_mask */
    }
  goto ret0;

 L63307: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L33054;
    }
  goto ret0;

 L33054: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L33055;
    }
  goto ret0;

 L33055: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33056;
    }
  goto ret0;

 L33056: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11028 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3294;  /* avx512vl_testmv2di3_mask */
    }
  goto ret0;

 L33137: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8HImode:
      goto L63308;
    case V8SImode:
      goto L63309;
    case V4SImode:
      goto L63310;
    case V8DImode:
      goto L63311;
    case V4DImode:
      goto L63312;
    case V2DImode:
      goto L63313;
    default:
      break;
    }
  goto ret0;

 L63308: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8HImode))
    {
      operands[1] = x3;
      goto L33138;
    }
  goto ret0;

 L33138: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8HImode))
    {
      operands[2] = x3;
      goto L33139;
    }
  goto ret0;

 L33139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33140;
    }
  goto ret0;

 L33140: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3306;  /* avx512vl_testnmv8hi3_mask */
    }
  goto ret0;

 L63309: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L33166;
    }
  goto ret0;

 L33166: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L33167;
    }
  goto ret0;

 L33167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33168;
    }
  goto ret0;

 L33168: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3310;  /* avx512vl_testnmv8si3_mask */
    }
  goto ret0;

 L63310: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L33180;
    }
  goto ret0;

 L33180: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L33181;
    }
  goto ret0;

 L33181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33182;
    }
  goto ret0;

 L33182: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 262 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3312;  /* avx512vl_testnmv4si3_mask */
    }
  goto ret0;

 L63311: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L33194;
    }
  goto ret0;

 L33194: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L33195;
    }
  goto ret0;

 L33195: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33196;
    }
  goto ret0;

 L33196: ATTRIBUTE_UNUSED_LABEL
  if (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 3314;  /* avx512f_testnmv8di3_mask */
    }
  goto ret0;

 L63312: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L33208;
    }
  goto ret0;

 L33208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L33209;
    }
  goto ret0;

 L33209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33210;
    }
  goto ret0;

 L33210: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3316;  /* avx512vl_testnmv4di3_mask */
    }
  goto ret0;

 L63313: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L33222;
    }
  goto ret0;

 L33222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L33223;
    }
  goto ret0;

 L33223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L33224;
    }
  goto ret0;

 L33224: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 11050 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 3318;  /* avx512vl_testnmv2di3_mask */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_121 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case HImode:
      goto L56952;
    case CCmode:
      goto L56946;
    case CCFPmode:
      goto L56947;
    case CCFPUmode:
      goto L56948;
    case DImode:
      goto L56949;
    case SImode:
      goto L56950;
    case QImode:
      goto L56951;
    case XImode:
      goto L56958;
    case OImode:
      goto L56959;
    case TImode:
      goto L56960;
    case TFmode:
      goto L56975;
    case XFmode:
      goto L56976;
    case DFmode:
      goto L56977;
    case SFmode:
      goto L56978;
    case CCZmode:
      goto L57003;
    default:
      break;
    }
 L1: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L2;
 L1379: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x1) == SImode)
    goto L57007;
 L656: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case STRICT_LOW_PART:
      goto L657;
    case REG:
      goto L57011;
    default:
     break;
   }
 L2556: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x1) == CCCmode
      && GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L2557;
  if (GET_CODE (x1) == PC)
    goto L7224;
 L1949: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L1950;
    }
 L7315: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x1;
  goto L7404;
 L7437: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L57012;
    case DImode:
      goto L57013;
    case HImode:
      goto L57014;
    case CCmode:
      goto L57017;
    case SFmode:
      goto L57018;
    case DFmode:
      goto L57019;
    case XFmode:
      goto L57020;
    case QImode:
      goto L57026;
    case CCZmode:
      goto L57027;
    case BLKmode:
      goto L57028;
    case CCCmode:
      goto L57029;
    default:
      break;
    }
 L8070: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == STRICT_LOW_PART)
    goto L8071;
 L10507: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x1;
  goto L10508;
 L10531: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case CCZmode:
      goto L57030;
    case BND32mode:
      goto L57031;
    case BND64mode:
      goto L57032;
    case SImode:
      goto L57035;
    case V8QImode:
      goto L57049;
    case V4HImode:
      goto L57037;
    case V2SImode:
      goto L57038;
    case V1DImode:
      goto L57039;
    case V2SFmode:
      goto L57040;
    case DImode:
      goto L57041;
    case SFmode:
      goto L57044;
    case V64QImode:
      goto L57050;
    case V32QImode:
      goto L57051;
    case V16QImode:
      goto L57136;
    case V32HImode:
      goto L57053;
    case V16HImode:
      goto L57054;
    case V8HImode:
      goto L57055;
    case V16SImode:
      goto L57142;
    case V8SImode:
      goto L57146;
    case V4SImode:
      goto L57150;
    case V8DImode:
      goto L57144;
    case V4DImode:
      goto L57148;
    case V2DImode:
      goto L57152;
    case V4TImode:
      goto L57062;
    case V2TImode:
      goto L57063;
    case V1TImode:
      goto L57064;
    case V16SFmode:
      goto L57143;
    case V8SFmode:
      goto L57147;
    case V4SFmode:
      goto L57151;
    case V8DFmode:
      goto L57145;
    case V4DFmode:
      goto L57149;
    case V2DFmode:
      goto L57153;
    case DFmode:
      goto L57108;
    case HImode:
      goto L57109;
    case QImode:
      goto L57110;
    case CCFPmode:
      goto L57112;
    case CCFPUmode:
      goto L57113;
    case TFmode:
      goto L57115;
    case TImode:
      goto L57137;
    case CCmode:
      goto L57140;
    default:
      break;
    }
 L51691: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x1;
  goto L51692;
 L51732: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case QImode:
      goto L57154;
    case HImode:
      goto L57155;
    case SImode:
      goto L57156;
    case DFmode:
      goto L57157;
    case DImode:
      goto L57158;
    default:
      break;
    }
  goto ret0;

 L56952: ATTRIBUTE_UNUSED_LABEL
  tem = recog_1 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L1;

 L56946: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L376;
  goto L1;

 L376: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 26)
    goto L377;
  x1 = XEXP (x0, 0);
  goto L1;

 L377: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L378;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L378: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1617 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SAHF))
    {
      return 48;  /* x86_sahf_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56947: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L381;
  goto L1;

 L381: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCFPmode
      && GET_CODE (x1) == COMPARE)
    goto L382;
  x1 = XEXP (x0, 0);
  goto L1;

 L382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57221;
    case DFmode:
      goto L57222;
    case XFmode:
      goto L57223;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57221: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L383;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L383: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode)
    goto L57224;
  x1 = XEXP (x0, 0);
  goto L1;

 L57224: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L384;
    }
 L57225: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L432;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L384: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1644 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387
   && SSE_FLOAT_MODE_P (SFmode)))
    {
      return 49;  /* *cmpisf_mixed */
    }
 L408: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE_MATH
   && SSE_FLOAT_MODE_P (SFmode)))
    {
      return 53;  /* *cmpisf_sse */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L57225;

 L432: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1692 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
    {
      return 57;  /* *cmpisf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57222: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L389;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode)
    goto L57226;
  x1 = XEXP (x0, 0);
  goto L1;

 L57226: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L390;
    }
 L57227: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L438;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L390: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1644 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387
   && SSE_FLOAT_MODE_P (DFmode)))
    {
      return 50;  /* *cmpidf_mixed */
    }
 L414: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE_MATH
   && SSE_FLOAT_MODE_P (DFmode)))
    {
      return 54;  /* *cmpidf_sse */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L57227;

 L438: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1692 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
    {
      return 58;  /* *cmpidf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57223: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L443;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L444;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L444: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1692 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH)))
    {
      return 59;  /* *cmpixf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56948: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L393;
  goto L1;

 L393: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCFPUmode
      && GET_CODE (x1) == COMPARE)
    goto L394;
  x1 = XEXP (x0, 0);
  goto L1;

 L394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57228;
    case DFmode:
      goto L57229;
    case XFmode:
      goto L57230;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57228: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L395;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode)
    goto L57231;
  x1 = XEXP (x0, 0);
  goto L1;

 L57231: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L396;
    }
 L57232: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L450;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L396: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1644 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387
   && SSE_FLOAT_MODE_P (SFmode)))
    {
      return 51;  /* *cmpiusf_mixed */
    }
 L420: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE_MATH
   && SSE_FLOAT_MODE_P (SFmode)))
    {
      return 55;  /* *cmpiusf_sse */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L57232;

 L450: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1692 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
    {
      return 60;  /* *cmpiusf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57229: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L401;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode)
    goto L57233;
  x1 = XEXP (x0, 0);
  goto L1;

 L57233: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L402;
    }
 L57234: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L456;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L402: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1644 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387
   && SSE_FLOAT_MODE_P (DFmode)))
    {
      return 52;  /* *cmpiudf_mixed */
    }
 L426: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE_MATH
   && SSE_FLOAT_MODE_P (DFmode)))
    {
      return 56;  /* *cmpiudf_sse */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L57234;

 L456: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1692 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
    {
      return 61;  /* *cmpiudf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57230: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L461;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L461: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L462;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L462: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1692 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH)))
    {
      return 62;  /* *cmpiuxf_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56949: ATTRIBUTE_UNUSED_LABEL
  tem = recog_2 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L1;

 L56950: ATTRIBUTE_UNUSED_LABEL
  tem = recog_3 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L1;

 L56951: ATTRIBUTE_UNUSED_LABEL
  tem = recog_4 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L1;

 L56958: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, XImode))
    {
      operands[0] = x1;
      goto L549;
    }
  goto L1;

 L549: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (vector_move_operand (x1, XImode))
    {
      operands[1] = x1;
      goto L550;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L550: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1964 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 79;  /* *movxi_internal_avx512f */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56959: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, OImode))
    {
      operands[0] = x1;
      goto L553;
    }
  goto L1;

 L553: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (vector_move_operand (x1, OImode))
    {
      operands[1] = x1;
      goto L554;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L554: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1988 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 80;  /* *movoi_internal_avx */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56960: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, TImode))
    {
      operands[0] = x1;
      goto L1405;
    }
  goto L1;

 L1405: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == TImode)
    goto L57317;
 L557: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x1, TImode))
    {
      operands[1] = x1;
      goto L558;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57317: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L1406;
    case MINUS:
      goto L2015;
    case NEG:
      goto L4494;
    default:
     break;
   }
  goto L557;

 L1406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TImode))
    {
      operands[1] = x2;
      goto L1407;
    }
  goto L557;

 L1407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, TImode))
    {
      operands[2] = x2;
      goto L1408;
    }
  goto L557;

 L1408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5208 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, TImode, operands)) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 193;  /* *addti3_doubleword */
    }
  x1 = XEXP (x0, 1);
  goto L557;

 L2015: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TImode))
    {
      operands[1] = x2;
      goto L2016;
    }
  goto L557;

 L2016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, TImode))
    {
      operands[2] = x2;
      goto L2017;
    }
  goto L557;

 L2017: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6149 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 233;  /* *subti3_doubleword */
    }
  x1 = XEXP (x0, 1);
  goto L557;

 L4494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TImode))
    {
      operands[1] = x2;
      goto L4495;
    }
  goto L557;

 L4495: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8743 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, TImode, operands)) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 383;  /* *negti2_doubleword */
    }
  x1 = XEXP (x0, 1);
  goto L557;

 L558: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2037 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_64BIT || TARGET_SSE)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 81;  /* *movti_internal */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56975: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, TFmode))
    {
      operands[0] = x1;
      goto L736;
    }
 L56979: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, TFmode))
    {
      operands[0] = x1;
      goto L749;
    }
 L57004: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, TFmode))
    {
      operands[0] = x1;
      goto L4846;
    }
  goto L1;

 L736: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_no_elim_operand (x1, TFmode))
    {
      operands[1] = x1;
      goto L737;
    }
  x1 = XEXP (x0, 0);
  goto L56979;

 L737: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT || TARGET_SSE))
    {
      return 111;  /* *pushtf */
    }
  x1 = XEXP (x0, 0);
  goto L56979;

 L749: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, TFmode))
    {
      operands[1] = x1;
      goto L750;
    }
  x1 = XEXP (x0, 0);
  goto L57004;

 L750: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2969 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_64BIT || TARGET_SSE)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   && (!can_create_pseudo_p ()
       || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
       || GET_CODE (operands[1]) != CONST_DOUBLE
       || (optimize_function_for_size_p (cfun)
	   && standard_sse_constant_p (operands[1])
	   && !memory_operand (operands[0], TFmode))
       || (!TARGET_MEMORY_MISMATCH_STALL
	   && memory_operand (operands[0], TFmode)))))
    {
      return 115;  /* *movtf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57004;

 L4846: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == TFmode)
    goto L57320;
  x1 = XEXP (x0, 0);
  goto L1;

 L57320: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == UNSPEC)
    goto L57322;
  x1 = XEXP (x0, 0);
  goto L1;

 L57322: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L57324;
    case 4:
      goto L57325;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57324: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 47)
    goto L4847;
  x1 = XEXP (x0, 0);
  goto L1;

 L4847: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (vector_move_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L4848;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4848: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L4849;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4849: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[3] = x2;
      goto L4850;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4850: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9080 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (TFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (TFmode == TFmode))))
    {
      return 418;  /* copysigntf3_const */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57325: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 47)
    goto L4903;
  x1 = XEXP (x0, 0);
  goto L1;

 L4903: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L4904;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4904: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, TFmode))
    {
      operands[3] = x2;
      goto L4905;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4905: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[4] = x2;
      goto L4906;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4906: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[5] = x2;
      goto L4907;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4907: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (TFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (TFmode == TFmode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 421;  /* copysigntf3_var */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56976: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, XFmode))
    {
      operands[0] = x1;
      goto L740;
    }
 L56980: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, XFmode))
    {
      operands[0] = x1;
      goto L882;
    }
 L56996: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, XFmode))
    {
      operands[0] = x1;
      goto L1269;
    }
  goto L1;

 L740: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_no_elim_operand (x1, XFmode))
    {
      operands[1] = x1;
      return 112;  /* *pushxf */
    }
  x1 = XEXP (x0, 0);
  goto L56980;

 L882: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == XFmode
      && GET_CODE (x1) == FLOAT_EXTEND)
    goto L883;
  if (general_operand (x1, XFmode))
    {
      operands[1] = x1;
      goto L754;
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57326;
    case DFmode:
      goto L57327;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L57326: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L884;
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L884: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4114 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 136;  /* *extendsfxf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L57327: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L889;
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L889: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4114 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 137;  /* *extenddfxf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L754: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3040 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))
   && (!can_create_pseudo_p ()
       || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
       || GET_CODE (operands[1]) != CONST_DOUBLE
       || (optimize_function_for_size_p (cfun)
	   && standard_80387_constant_p (operands[1]) > 0
	   && !memory_operand (operands[0], XFmode))
       || (!TARGET_MEMORY_MISMATCH_STALL
	   && memory_operand (operands[0], XFmode)))))
    {
      return 116;  /* *movxf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56996;

 L1269: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == XFmode)
    goto L57328;
  x1 = XEXP (x0, 0);
  goto L1;

 L57328: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FLOAT:
      goto L1270;
    case ABS:
      goto L4787;
    case NEG:
      goto L4792;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L1;

 L1270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L57331;
    case SImode:
      goto L57332;
    case DImode:
      goto L57333;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57331: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L1271;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L1271: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4824 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (!(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)))
    {
      return 176;  /* floathixf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57332: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L1276;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L1276: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4835 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 177;  /* floatsixf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57333: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L1281;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L1281: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4835 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 178;  /* floatdixf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4787: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57335;
  x1 = XEXP (x0, 0);
  goto L1;

 L57335: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L4810;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L4788;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4810: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57336;
    case DFmode:
      goto L57337;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57336: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L4811;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4811: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9046 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 412;  /* *absextendsfxf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57337: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L4823;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4823: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9055 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 414;  /* *absextenddfxf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4788: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9026 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (reload_completed
       || !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH))))
    {
      return 408;  /* *absxf2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode)
    goto L57339;
  x1 = XEXP (x0, 0);
  goto L1;

 L57339: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L4816;
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L4793;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L57340;
    case DFmode:
      goto L57341;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57340: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L4817;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4817: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9046 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 413;  /* *negextendsfxf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57341: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L4829;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4829: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9055 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 415;  /* *negextenddfxf2 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4793: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9026 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (reload_completed
       || !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH))))
    {
      return 409;  /* *negxf2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56977: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L743;
    }
 L56981: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L867;
    }
 L56985: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L949;
    }
 L56987: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L959;
    }
  goto L1;

 L743: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_no_elim_operand (x1, DFmode))
    {
      operands[1] = x1;
      return 113;  /* *pushdf */
    }
  x1 = XEXP (x0, 0);
  goto L56981;

 L867: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == FLOAT_EXTEND)
    goto L868;
  if (general_operand (x1, DFmode))
    {
      operands[1] = x1;
      goto L758;
    }
  x1 = XEXP (x0, 0);
  goto L56985;

 L868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L869;
    }
  x1 = XEXP (x0, 0);
  goto L56985;

 L869: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4054 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_MIX_SSE_I387))
    {
      return 133;  /* *extendsfdf2_mixed */
    }
 L874: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4076 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH))
    {
      return 134;  /* *extendsfdf2_sse */
    }
 L879: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4085 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 135;  /* *extendsfdf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56985;

 L758: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3094 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))
   && (!can_create_pseudo_p ()
       || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
       || GET_CODE (operands[1]) != CONST_DOUBLE
       || (optimize_function_for_size_p (cfun)
	   && ((!(TARGET_SSE2 && TARGET_SSE_MATH)
		&& standard_80387_constant_p (operands[1]) > 0)
	       || (TARGET_SSE2 && TARGET_SSE_MATH
		   && standard_sse_constant_p (operands[1])))
	   && !memory_operand (operands[0], DFmode))
       || ((TARGET_64BIT || !TARGET_MEMORY_MISMATCH_STALL)
	   && memory_operand (operands[0], DFmode)))))
    {
      return 117;  /* *movdf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56985;

 L949: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode)
    goto L57342;
  x1 = XEXP (x0, 0);
  goto L56987;

 L57342: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FLOAT_TRUNCATE:
      goto L950;
    case FLOAT:
      goto L1265;
    case ABS:
      goto L4777;
    case NEG:
      goto L4782;
    case UNSPEC:
      goto L57349;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L57348;
    default:
      x1 = XEXP (x0, 0);
      goto L56987;
   }
 L57348: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, DFmode))
    {
      operands[3] = x1;
      goto L6120;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L950: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L951;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L951: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4368 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && flag_unsafe_math_optimizations))
    {
      return 147;  /* truncxfdf2_i387_noop */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L1265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L57351;
    case SImode:
      goto L57352;
    case DImode:
      goto L57353;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L57351: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L1266;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L1266: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4824 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)))
    {
      return 175;  /* floathidf2 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L57352: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L1291;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L1291: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4870 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 180;  /* *floatsidf2_sse */
    }
 L1301: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4904 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, SImode)))
    {
      return 182;  /* *floatsidf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L57353: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L1311;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L1311: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4904 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)))
    {
      return 184;  /* *floatdidf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4777: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L57355;
  x1 = XEXP (x0, 0);
  goto L56987;

 L57355: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L4798;
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L4778;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L4799;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4799: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9037 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && (!TARGET_SSE_MATH || TARGET_MIX_SSE_I387)))
    {
      return 410;  /* *absextendsfdf2 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4778: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9026 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (reload_completed
       || !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))))
    {
      return 406;  /* *absdf2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4782: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L57357;
  x1 = XEXP (x0, 0);
  goto L56987;

 L57357: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT_EXTEND)
    goto L4804;
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L4783;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4804: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L4805;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4805: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9037 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && (!TARGET_SSE_MATH || TARGET_MIX_SSE_I387)))
    {
      return 411;  /* *negextendsfdf2 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4783: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9026 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (reload_completed
       || !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))))
    {
      return 407;  /* *negdf2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L57349: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L57358;
    case 4:
      goto L57359;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L57358: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 47)
    goto L4840;
  x1 = XEXP (x0, 0);
  goto L56987;

 L4840: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L4841;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4841: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L4842;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4842: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L4843;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4843: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9080 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (DFmode == TFmode))))
    {
      return 417;  /* copysigndf3_const */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L57359: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 47)
    goto L4884;
  x1 = XEXP (x0, 0);
  goto L56987;

 L4884: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L4885;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4885: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L4886;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4886: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L4887;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4887: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L4888;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L4888: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (DFmode == TFmode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 420;  /* copysigndf3_var */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L6120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L6121;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L6121: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L6122;
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L6122: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 508;  /* setcc_df_sse */
    }
  x1 = XEXP (x0, 0);
  goto L56987;

 L959: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == FLOAT_TRUNCATE)
    goto L960;
  x1 = XEXP (x0, 0);
  goto L1;

 L960: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L961;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L961: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4377 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 149;  /* *truncxfdf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L56978: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L746;
    }
 L56982: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L892;
    }
 L56983: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L923;
    }
 L56984: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L944;
    }
 L56986: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L954;
    }
  goto L1;

 L746: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_no_elim_operand (x1, SFmode))
    {
      operands[1] = x1;
      return 114;  /* *pushsf */
    }
  x1 = XEXP (x0, 0);
  goto L56982;

 L892: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == FLOAT_TRUNCATE)
    goto L893;
  if (general_operand (x1, SFmode))
    {
      operands[1] = x1;
      goto L762;
    }
  x1 = XEXP (x0, 0);
  goto L56983;

 L893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L894;
    }
  x1 = XEXP (x0, 0);
  goto L56983;

 L894: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4212 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_MIX_SSE_I387 && flag_unsafe_math_optimizations))
    {
      return 138;  /* *truncdfsf_fast_mixed */
    }
 L899: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4234 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH))
    {
      return 139;  /* *truncdfsf_fast_sse */
    }
 L904: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4244 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && flag_unsafe_math_optimizations))
    {
      return 140;  /* *truncdfsf_fast_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56983;

 L762: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3277 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[0]) && MEM_P (operands[1]))
   && (!can_create_pseudo_p ()
       || (ix86_cmodel == CM_MEDIUM || ix86_cmodel == CM_LARGE)
       || GET_CODE (operands[1]) != CONST_DOUBLE
       || (optimize_function_for_size_p (cfun)
	   && ((!TARGET_SSE_MATH
		&& standard_80387_constant_p (operands[1]) > 0)
	       || (TARGET_SSE_MATH
		   && standard_sse_constant_p (operands[1]))))
       || memory_operand (operands[0], SFmode))))
    {
      return 118;  /* *movsf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L56983;

 L923: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == FLOAT_TRUNCATE)
    goto L924;
  x1 = XEXP (x0, 0);
  goto L56984;

 L924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L925;
    }
  x1 = XEXP (x0, 0);
  goto L56984;

 L925: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4297 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && !(TARGET_SSE2 && TARGET_SSE_MATH)
   && !TARGET_MIX_SSE_I387))
    {
      return 143;  /* *truncdfsf2_i387_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56984;

 L944: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode)
    goto L57360;
  x1 = XEXP (x0, 0);
  goto L56986;

 L57360: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FLOAT_TRUNCATE:
      goto L945;
    case FLOAT:
      goto L1260;
    case ABS:
      goto L4767;
    case NEG:
      goto L4772;
    case UNSPEC:
      goto L57367;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L57366;
    default:
      x1 = XEXP (x0, 0);
      goto L56986;
   }
 L57366: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, SFmode))
    {
      operands[3] = x1;
      goto L6114;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L946;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L946: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4368 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && flag_unsafe_math_optimizations))
    {
      return 146;  /* truncxfsf2_i387_noop */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L1260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L57369;
    case SImode:
      goto L57370;
    case DImode:
      goto L57371;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L57369: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L1261;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L1261: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4824 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)))
    {
      return 174;  /* floathisf2 */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L57370: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L1286;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L1286: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4870 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 179;  /* *floatsisf2_sse */
    }
 L1296: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4904 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, SImode)))
    {
      return 181;  /* *floatsisf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L57371: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L1306;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L1306: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4904 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)))
    {
      return 183;  /* *floatdisf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L4768;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4768: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9026 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (reload_completed
       || !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))))
    {
      return 404;  /* *abssf2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4772: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L4773;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4773: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9026 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387
   && (reload_completed
       || !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))))
    {
      return 405;  /* *negsf2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L57367: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L57372;
    case 4:
      goto L57373;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L57372: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 47)
    goto L4833;
  x1 = XEXP (x0, 0);
  goto L56986;

 L4833: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L4834;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4834: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L4835;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4835: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L4836;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4836: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9080 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (SFmode == TFmode))))
    {
      return 416;  /* copysignsf3_const */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L57373: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 47)
    goto L4865;
  x1 = XEXP (x0, 0);
  goto L56986;

 L4865: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L4866;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4866: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L4867;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4867: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L4868;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4868: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L4869;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L4869: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (SFmode == TFmode)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 419;  /* copysignsf3_var */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L6114: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L6115;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L6115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L6116;
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L6116: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 507;  /* setcc_sf_sse */
    }
  x1 = XEXP (x0, 0);
  goto L56986;

 L954: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == FLOAT_TRUNCATE)
    goto L955;
  x1 = XEXP (x0, 0);
  goto L1;

 L955: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L956;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L956: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4377 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 148;  /* *truncxfsf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L57003: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L4067;
  goto L1;

 L4067: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCZmode
      && GET_CODE (x1) == COMPARE)
    goto L4068;
  x1 = XEXP (x0, 0);
  goto L1;

 L4068: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == IOR)
    goto L4069;
  x1 = XEXP (x0, 0);
  goto L1;

 L4069: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[0] = x3;
      goto L4070;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4071;
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L4071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && ix86_match_ccmode (insn, CCZmode)))
    {
      return 360;  /* kortestzhi */
    }
  x1 = XEXP (x0, 0);
  goto L1;

 L2: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_CODE (x1) == COMPARE)
    goto L3;
  x1 = XEXP (x0, 0);
  goto L1379;

 L3: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L57378;
    case HImode:
      goto L57379;
    case SImode:
      goto L57380;
    case DImode:
      goto L57381;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L57378: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MINUS)
    goto L52;
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L4;
    }
 L57382: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_x64nomem_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L80;
    }
 L57383: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L89;
  x1 = XEXP (x0, 0);
  goto L1379;

 L52: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[0] = x3;
      goto L53;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L53: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L54;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L54: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1239 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 9;  /* *cmpqi_minus_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L4: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5;
    }
 L28: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L29;
    }
  x2 = XEXP (x1, 0);
  goto L57382;

 L5: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1216 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 1;  /* *cmpqi_ccno_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L28;

 L29: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)))
    {
      return 5;  /* *cmpqi_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57382;

 L80: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L81;
  x2 = XEXP (x1, 0);
  goto L57383;

 L81: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L82;
  x2 = XEXP (x1, 0);
  goto L57383;

 L82: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L83;
    }
  x2 = XEXP (x1, 0);
  goto L57383;

 L83: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L84;
  x2 = XEXP (x1, 0);
  goto L57383;

 L84: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)]
      && 
#line 1253 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)))
    {
      return 13;  /* *cmpqi_ext_1 */
    }
  x2 = XEXP (x1, 0);
  goto L57383;

 L89: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L90;
  x1 = XEXP (x0, 0);
  goto L1379;

 L90: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[0] = x4;
      goto L91;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L91: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L92;
  x1 = XEXP (x0, 0);
  goto L1379;

 L92: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L93;
  x1 = XEXP (x0, 0);
  goto L1379;

 L93: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L94;
    }
 L103: ATTRIBUTE_UNUSED_LABEL
  if (general_x64nomem_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L104;
    }
 L113: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L114;
  x1 = XEXP (x0, 0);
  goto L1379;

 L94: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1268 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 14;  /* *cmpqi_ext_2 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L103;

 L104: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)))
    {
      return 15;  /* *cmpqi_ext_3 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L113;

 L114: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L115;
  x1 = XEXP (x0, 0);
  goto L1379;

 L115: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L116;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L116: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L117;
  x1 = XEXP (x0, 0);
  goto L1379;

 L117: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)]
      && 
#line 1313 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)))
    {
      return 16;  /* *cmpqi_ext_4 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L57379: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MINUS)
    goto L59;
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L10;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L59: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[0] = x3;
      goto L60;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L60: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L61;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L61: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1239 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 10;  /* *cmphi_minus_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L10: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L11;
    }
 L34: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L35;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L11: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1216 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 2;  /* *cmphi_ccno_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L34;

 L35: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)))
    {
      return 6;  /* *cmphi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L57380: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MINUS)
    goto L66;
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L16;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L66: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L67;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L67: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L68;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L68: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1239 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 11;  /* *cmpsi_minus_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L16: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L17;
    }
 L40: ATTRIBUTE_UNUSED_LABEL
  if (x86_64_general_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L41;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L17: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1216 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 3;  /* *cmpsi_ccno_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L40;

 L41: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)))
    {
      return 7;  /* *cmpsi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L57381: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MINUS)
    goto L73;
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L22;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L73: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L74;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L74: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L75;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L75: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 1239 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 12;  /* *cmpdi_minus_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L22: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L23;
    }
 L46: ATTRIBUTE_UNUSED_LABEL
  if (x86_64_general_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L47;
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L23: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1216 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 4;  /* *cmpdi_ccno_1 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L46;

 L47: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 8;  /* *cmpdi_1 */
    }
  x1 = XEXP (x0, 0);
  goto L1379;

 L57007: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L1380;
    }
 L57009: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L3456;
    }
 L57008: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L1452;
    }
  goto L656;

 L1380: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (address_no_seg_operand (x1, SImode))
    {
      operands[1] = x1;
      return 191;  /* *leasi */
    }
 L2660: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x1) == SImode)
    goto L57384;
  x1 = XEXP (x0, 0);
  goto L57009;

 L57384: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MULT:
      goto L2661;
    case TRUNCATE:
      goto L2942;
    case NOT:
      goto L4045;
    case IOR:
      goto L4091;
    case ASHIFT:
      goto L5054;
    case LSHIFTRT:
      goto L5403;
    case ASHIFTRT:
      goto L5409;
    case ROTATERT:
      goto L5919;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case GEU:
    case GTU:
    case LEU:
    case LTU:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L57392;
    default:
      x1 = XEXP (x0, 0);
      goto L57009;
   }
 L57392: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x1, SImode))
    {
      operands[1] = x1;
      goto L6093;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2661: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L2662;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2662: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_general_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L2663;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2663: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6498 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 272;  /* *mulsi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2942: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L2943;
  x1 = XEXP (x0, 0);
  goto L57009;

 L2943: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == MULT)
    goto L2944;
  x1 = XEXP (x0, 0);
  goto L57009;

 L2944: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode)
    goto L57393;
  x1 = XEXP (x0, 0);
  goto L57009;

 L57393: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L2945;
    case ZERO_EXTEND:
      goto L2970;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2945: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2946;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2946: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2947;
  x1 = XEXP (x0, 0);
  goto L57009;

 L2947: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2948;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2948: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (32)]
      && 
#line 7001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 287;  /* *smulsi3_highpart_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2970: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2971;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2971: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L2972;
  x1 = XEXP (x0, 0);
  goto L57009;

 L2972: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2973;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L2973: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (32)]
      && 
#line 7001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 288;  /* *umulsi3_highpart_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L4045: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == XOR)
    goto L4046;
  x1 = XEXP (x0, 0);
  goto L57009;

 L4046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L4047;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L4047: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L4048;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L4048: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8443 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 358;  /* kxnorsi */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L4091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ASHIFT)
    goto L4092;
  x1 = XEXP (x0, 0);
  goto L57009;

 L4092: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L4093;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L4093: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L4094;
  x1 = XEXP (x0, 0);
  goto L57009;

 L4094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L4095;
  x1 = XEXP (x0, 0);
  goto L57009;

 L4095: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L4096;
  x1 = XEXP (x0, 0);
  goto L57009;

 L4096: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L4097;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L4097: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8514 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW))
    {
      return 363;  /* kunpcksi */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5054: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5055;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5055: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L5056;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5056: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9401 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2))
    {
      return 434;  /* *bmi2_ashlsi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5404;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L5405;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5405: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10045 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2))
    {
      return 456;  /* *bmi2_lshrsi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5409: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5410;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5410: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L5411;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5411: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10045 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2))
    {
      return 457;  /* *bmi2_ashrsi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L5920;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5920: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (immediate_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L5921;
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L5921: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10417 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2))
    {
      return 490;  /* *bmi2_rorxsi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L6093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6094;
  x1 = XEXP (x0, 0);
  goto L57009;

 L6094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CONST_INT)
    goto L57395;
  x1 = XEXP (x0, 0);
  goto L57009;

 L57395: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x2, 0) == 0LL)
    goto L57397;
  x1 = XEXP (x0, 0);
  goto L57009;

 L57397: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10855 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL
   && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 503;  /* *setcc_si_1_and */
    }
 L57398: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10871 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL
   && (!TARGET_ZERO_EXTEND_WITH_AND || optimize_function_for_size_p (cfun))))
    {
      return 504;  /* *setcc_si_1_movzbl */
    }
  x1 = XEXP (x0, 0);
  goto L57009;

 L3456: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57399;
  x1 = XEXP (x0, 0);
  goto L57008;

 L57399: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case AND:
      goto L3457;
    case IOR:
      goto L3463;
    case XOR:
      goto L3469;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3458;
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L3459;
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F) && 
#line 934 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)))
    {
      return 317;  /* *kandsi */
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3463: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3464;
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L3465;
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3465: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F) && 
#line 934 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)))
    {
      return 318;  /* *korsi */
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3469: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (mask_reg_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3470;
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3470: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (mask_reg_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L3471;
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L3471: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 7737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F) && 
#line 934 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW)))
    {
      return 319;  /* *kxorsi */
    }
  x1 = XEXP (x0, 0);
  goto L57008;

 L1452: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57402;
  x1 = XEXP (x0, 0);
  goto L656;

 L57402: ATTRIBUTE_UNUSED_LABEL
  tem = recog_5 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L656;

 L657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L57417;
    case HImode:
      goto L57418;
    default:
      break;
    }
  goto L7315;

 L57417: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1510;
    }
 L57419: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L675;
    }
  goto L7315;

 L1510: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L57421;
 L658: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L659;
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L57419;

 L57421: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L1511;
    case MINUS:
      goto L2087;
    case AND:
      goto L3545;
    case IOR:
      goto L3878;
    case XOR:
      goto L3894;
    case ASHIFT:
      goto L5126;
    case LSHIFTRT:
      goto L5537;
    case ASHIFTRT:
      goto L5553;
    case ROTATE:
      goto L6047;
    case ROTATERT:
      goto L6063;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case GEU:
    case GTU:
    case LEU:
    case LTU:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L57431;
    default:
      goto L658;
   }
 L57431: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x1, QImode))
    {
      operands[1] = x1;
      goto L6109;
    }
  goto L658;

 L1511: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L1512;
  goto L658;

 L1512: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L1513;
    }
  goto L658;

 L1513: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5468 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((! TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 201;  /* *addqi_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L2087: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L2088;
  goto L658;

 L2088: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L2089;
    }
  goto L658;

 L2089: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((! TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 238;  /* *subqi_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L3545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L3546;
  goto L658;

 L3546: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3547;
    }
  goto L658;

 L3547: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 326;  /* *andqi_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L3878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L3879;
  goto L658;

 L3879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3880;
    }
  goto L658;

 L3880: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8399 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 346;  /* *iorqi_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L3894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L3895;
  goto L658;

 L3895: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L3896;
    }
  goto L658;

 L3896: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8399 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 347;  /* *xorqi_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L5126: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L5127;
  goto L658;

 L5127: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5128;
    }
  goto L658;

 L5128: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9643 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[1] == const1_rtx
	&& (TARGET_SHIFT1
	    || (TARGET_DOUBLE_WITH_ADD && REG_P (operands[0]))))))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 439;  /* *ashlqi3_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L5537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L5538;
  goto L658;

 L5538: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5539;
    }
  goto L658;

 L5539: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10176 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 466;  /* *lshrqi3_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L5553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L5554;
  goto L658;

 L5554: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L5555;
    }
  goto L658;

 L5555: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10176 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 467;  /* *ashrqi3_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L6047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L6048;
  goto L658;

 L6048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L6049;
    }
  goto L658;

 L6049: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10574 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 499;  /* *rotlqi3_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L6063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L6064;
  goto L658;

 L6064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L6065;
    }
  goto L658;

 L6065: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10574 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 500;  /* *rotrqi3_1_slp */
    }
  x1 = XEXP (x0, 1);
  goto L658;

 L6109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6110;
  goto L658;

 L6110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 506;  /* *setcc_qi_slp */
    }
  goto L658;

 L659: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2672 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 100;  /* *movstrictqi_1 */
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L57419;

 L675: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const0_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L676;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L676: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 102;  /* *movstrictqi_xor */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L57418: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L663;
    }
 L57420: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L687;
    }
  goto L7315;

 L663: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L664;
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L57420;

 L664: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2672 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 101;  /* *movstricthi_1 */
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L57420;

 L687: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const0_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L688;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L688: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 103;  /* *movstricthi_xor */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L57011: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 0) == 17)
    goto L1578;
  goto L2556;

 L1578: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_CODE (x1) == COMPARE)
    goto L1579;
  x1 = XEXP (x0, 0);
  goto L2556;

 L1579: ATTRIBUTE_UNUSED_LABEL
  tem = recog_6 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L2556;

 L2557: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCCmode
      && GET_CODE (x1) == COMPARE)
    goto L2558;
  x1 = XEXP (x0, 0);
  goto L1949;

 L2558: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L57476;
    case HImode:
      goto L57477;
    case SImode:
      goto L57478;
    case DImode:
      goto L57481;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L57476: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PLUS)
    goto L2559;
  x1 = XEXP (x0, 0);
  goto L1949;

 L2559: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2560;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2561;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 6415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 265;  /* *addqi3_cconly_overflow */
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L57477: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L2577;
    case IOR:
      goto L4076;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2577: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L2578;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2578: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L2579;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 6415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 266;  /* *addhi3_cconly_overflow */
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L4076: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[0] = x3;
      goto L4077;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L4077: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4078;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L4078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)]
      && 
#line 8488 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && ix86_match_ccmode (insn, CCCmode)))
    {
      return 361;  /* kortestchi */
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L57478: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L2595;
    case ZERO_EXTRACT:
      goto L6070;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2595: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L2596;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2596: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2597;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L2597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1])
      && 
#line 6415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 267;  /* *addsi3_cconly_overflow */
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L6070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L6071;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L6071: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6072;
  x1 = XEXP (x0, 0);
  goto L1949;

 L6072: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x86_64_nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L6073;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L6073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 10825 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)))
    {
      return 501;  /* *btsi */
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L57481: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == ZERO_EXTRACT)
    goto L6078;
  x1 = XEXP (x0, 0);
  goto L1949;

 L6078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L6079;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L6079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6080;
  x1 = XEXP (x0, 0);
  goto L1949;

 L6080: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x86_64_nonmemory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L6081;
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L6081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 10825 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 502;  /* *btdi */
    }
  x1 = XEXP (x0, 0);
  goto L1949;

 L7224: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L57482;
    case DImode:
      goto L57483;
    default:
      break;
    }
 L6125: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case IF_THEN_ELSE:
      goto L6732;
    case LABEL_REF:
      goto L7216;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L7315;

 L57482: ATTRIBUTE_UNUSED_LABEL
  if (indirect_branch_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L7225;
    }
  goto L6125;

 L7225: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 553;  /* *indirect_jump */
    }
  x1 = XEXP (x0, 1);
  goto L6125;

 L57483: ATTRIBUTE_UNUSED_LABEL
  if (indirect_branch_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L7229;
    }
  goto L6125;

 L7229: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 554;  /* *indirect_jump */
    }
  x1 = XEXP (x0, 1);
  goto L6125;

 L6732: ATTRIBUTE_UNUSED_LABEL
  tem = recog_7 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L7315;

 L7216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[0] = x2;
  goto L7217;
 L7221: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x2;
  return 552;  /* jump */

 L7217: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11490 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX && ix86_bnd_prefixed_insn_p (insn)))
    {
      return 551;  /* jump_bnd */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L7221;

 L1950: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L1951;
    case IOR:
      goto L1977;
    case XOR:
      goto L1985;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L1968;
    case MULT:
      goto L1960;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1968: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == MULT)
    goto L1969;
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1953;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1969: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (index_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L1970;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1970: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const248_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L1971;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1971: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L1972;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (immediate_operand (x2, VOIDmode))
    {
      operands[4] = x2;
      goto L1973;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1973: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6063 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
   && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && GET_MODE (operands[0]) == GET_MODE (operands[3])))
    {
      return 229;  /* *lea_general_3 */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L1954;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1954: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (immediate_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L1955;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1955: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6000 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
   && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && GET_MODE (operands[0]) == GET_MODE (operands[2])
   && (GET_MODE (operands[0]) == GET_MODE (operands[3])
       || GET_MODE (operands[3]) == VOIDmode)))
    {
      return 227;  /* *lea_general_1 */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1960: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1961;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1961: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const248_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L1962;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1962: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L1963;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1963: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6032 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
   && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && (GET_MODE (operands[0]) == GET_MODE (operands[3])
       || GET_MODE (operands[3]) == VOIDmode)))
    {
      return 228;  /* *lea_general_2 */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == ASHIFT)
    goto L1978;
  x1 = XEXP (x0, 0);
  goto L7315;

 L1978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1979;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1979: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L1980;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L1981;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1981: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6098 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
      && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    || GET_MODE (operands[0]) == SImode
    || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[2])) - 1 < 3
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
       < ((unsigned HOST_WIDE_INT) 1 << INTVAL (operands[2])))))
    {
      return 230;  /* *lea_general_4 */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == ASHIFT)
    goto L1986;
  x1 = XEXP (x0, 0);
  goto L7315;

 L1986: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1987;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1987: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L1988;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L1989;
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L1989: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6098 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
      && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    || GET_MODE (operands[0]) == SImode
    || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[2])) - 1 < 3
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
       < ((unsigned HOST_WIDE_INT) 1 << INTVAL (operands[2])))))
    {
      return 231;  /* *lea_general_4 */
    }
  x1 = XEXP (x0, 0);
  goto L7315;

 L7404: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == BLKmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 17)
    goto L7405;
  if (GET_CODE (x1) == CALL)
    goto L7317;
  x1 = XEXP (x0, 0);
  goto L7437;

 L7405: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (rtx_equal_p (x2, operands[0]))
    {
      return 576;  /* *memory_blockage */
    }
  x1 = XEXP (x0, 0);
  goto L7437;

 L7317: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L7318;
  x1 = XEXP (x0, 0);
  goto L7437;

 L7318: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (call_insn_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7319;
    }
 L7325: ATTRIBUTE_UNUSED_LABEL
  if (call_insn_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L7326;
    }
 L7332: ATTRIBUTE_UNUSED_LABEL
  if (sibcall_insn_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7333;
    }
 L7339: ATTRIBUTE_UNUSED_LABEL
  if (sibcall_insn_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L7340;
    }
  x1 = XEXP (x0, 0);
  goto L7437;

 L7319: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[2] = x2;
  goto L7320;

 L7320: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11868 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      return 566;  /* *call_value */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7325;

 L7326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[2] = x2;
  goto L7327;

 L7327: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11868 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      return 567;  /* *call_value */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7332;

 L7333: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[2] = x2;
  goto L7334;

 L7334: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11876 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      return 568;  /* *sibcall_value */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7339;

 L7340: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[2] = x2;
  goto L7341;

 L7341: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11876 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      return 569;  /* *sibcall_value */
    }
  x1 = XEXP (x0, 0);
  goto L7437;

 L57012: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L7438;
    }
 L57015: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L8053;
    }
 L57016: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L8058;
    }
 L57024: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L9009;
    }
  goto L8070;

 L7438: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57514;
  x1 = XEXP (x0, 0);
  goto L57015;

 L57514: ATTRIBUTE_UNUSED_LABEL
  tem = recog_8 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57015;

 L8053: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57549;
  x1 = XEXP (x0, 0);
  goto L57016;

 L57549: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case BSWAP:
      goto L8054;
    case UNSPEC:
      goto L57552;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57016;

 L8054: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8055;
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L8055: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13016 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MOVBE
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 630;  /* *bswapsi2_movbe */
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L57552: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L57554;
  x1 = XEXP (x0, 0);
  goto L57016;

 L57554: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 64LL:
      goto L9150;
    case 65LL:
      goto L9162;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L9150: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9151;
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L9151: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 745;  /* *fistsi2_floor_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L9162: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9163;
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L9163: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 746;  /* *fistsi2_ceil_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57016;

 L8058: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57556;
  x1 = XEXP (x0, 0);
  goto L57024;

 L57556: ATTRIBUTE_UNUSED_LABEL
  tem = recog_9 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57024;

 L9009: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 56)
    goto L9010;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9010: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9011;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9011: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15377 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 732;  /* fistsi2 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57013: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L7456;
    }
 L57021: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L8958;
    }
 L57022: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L8971;
    }
  goto L8070;

 L7456: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57608;
  x1 = XEXP (x0, 0);
  goto L57021;

 L57608: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57620;
    case CTZ:
      goto L7532;
    case CLZ:
      goto L7597;
    case POPCOUNT:
      goto L8008;
    case ZERO_EXTEND:
      goto L8207;
    case PLUS:
      goto L8279;
    case UNSPEC_VOLATILE:
      goto L57622;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57021;

 L57620: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L57627;
  x1 = XEXP (x0, 0);
  goto L57021;

 L57627: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 16LL:
      goto L7457;
    case 19LL:
      goto L8216;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L7457: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7458;
  x1 = XEXP (x0, 0);
  goto L57021;

 L7458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[1] = x3;
  goto L7459;

 L7459: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12259 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64))
    {
      return 587;  /* set_got_offset_rex64 */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8216: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 13416 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 643;  /* *load_tp_di */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L7532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L7533;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L7533: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 12480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_BMI || TARGET_GENERIC)
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 595;  /* *ctzdi2_falsedep_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L7597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L7598;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L7598: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 12576 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 600;  /* *clzdi2_lzcnt_falsedep_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L8009;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8009: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 12933 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 626;  /* *popcountdi2_falsedep_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode)
    goto L57629;
  x1 = XEXP (x0, 0);
  goto L57021;

 L57629: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L57631;
    case PLUS:
      goto L8247;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57021;

 L57631: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 19)
    goto L8208;
  x1 = XEXP (x0, 0);
  goto L57021;

 L8208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 13405 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_X32))
    {
      return 641;  /* *load_tp_x32_zext */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 19)
    goto L8248;
  x1 = XEXP (x0, 0);
  goto L57021;

 L8248: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L8249;
  x1 = XEXP (x0, 0);
  goto L57021;

 L8249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8250;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8250: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13443 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_X32)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 645;  /* *add_tp_x32_zext */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 19)
    goto L8280;
  x1 = XEXP (x0, 0);
  goto L57021;

 L8280: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L8281;
  x1 = XEXP (x0, 0);
  goto L57021;

 L8281: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L8282;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8282: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13456 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 647;  /* *add_tp_di */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L57622: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57632;
    case 2:
      goto L57633;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L57632: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 1LL:
      goto L10107;
    case 10LL:
      goto L10336;
    case 8LL:
      goto L10340;
    case 12LL:
      goto L10457;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10107: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10108;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10108: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17122 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_target_stack_probe ()) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 818;  /* allocate_stack_worker_probe_di */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10336: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      return 838;  /* rdpmc */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 839;  /* rdtsc */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10457: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 18636 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LWP) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 856;  /* lwp_slwpcbdi */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L57633: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 2)
    goto L10164;
  x1 = XEXP (x0, 0);
  goto L57021;

 L10164: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10165;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10165: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10166;
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L10166: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 822;  /* probe_stack_rangedi */
    }
  x1 = XEXP (x0, 0);
  goto L57021;

 L8958: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L57637;
  x1 = XEXP (x0, 0);
  goto L57022;

 L57637: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == UNSPEC)
    goto L57640;
  x1 = XEXP (x0, 0);
  goto L57022;

 L57640: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L57643;
  x1 = XEXP (x0, 0);
  goto L57022;

 L57643: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 56LL:
      goto L8959;
    case 64LL:
      goto L9174;
    case 65LL:
      goto L9186;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L8959: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8960;
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L8960: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15294 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()))
    {
      return 726;  /* *fistdi2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L9174: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9175;
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L9175: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 747;  /* *fistdi2_floor_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L9186: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9187;
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L9187: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 748;  /* *fistdi2_ceil_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57022;

 L8971: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 56)
    goto L8972;
  x1 = XEXP (x0, 0);
  goto L8070;

 L8972: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8973;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8973: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15318 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 727;  /* fistdi2 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57014: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L7560;
    }
 L57023: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L9004;
    }
 L57025: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L9125;
    }
  goto L8070;

 L7560: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57646;
  x1 = XEXP (x0, 0);
  goto L57023;

 L57646: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case CTZ:
      goto L7561;
    case CLZ:
      goto L7626;
    case MINUS:
      goto L7982;
    case POPCOUNT:
      goto L8037;
    case UNSPEC:
      goto L57654;
    case IF_THEN_ELSE:
      goto L9928;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57023;

 L7561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L7562;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L7562: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 597;  /* *ctzhi2 */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L7626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L7627;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L7627: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12607 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 602;  /* *clzhi2_lzcnt */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L7982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L7983;
  x1 = XEXP (x0, 0);
  goto L57023;

 L7983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == CLZ)
    goto L7984;
  x1 = XEXP (x0, 0);
  goto L57023;

 L7984: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L7985;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L7985: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 624;  /* *bsrhi */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L8037: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L8038;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L8038: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12971 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 628;  /* *popcounthi2 */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L57654: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L57657;
  x1 = XEXP (x0, 0);
  goto L57023;

 L57657: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 56LL:
      goto L8995;
    case 59LL:
      goto L9375;
    case 77LL:
      goto L9390;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L8995: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8996;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L8996: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15359 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()))
    {
      return 729;  /* *fisthi2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9375: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57660;
    case DFmode:
      goto L57661;
    case XFmode:
      goto L57662;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L57660: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L9376;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9376: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 761;  /* fxamsf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L57661: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L9381;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9381: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 762;  /* fxamdf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L57662: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9386;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9386: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 763;  /* fxamxf2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9390: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L57663;
    case DFmode:
      goto L57664;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L57663: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L9391;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9391: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15844 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()))
    {
      return 764;  /* fxamsf2_i387_with_temp */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L57664: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L9396;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9396: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15844 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()))
    {
      return 765;  /* fxamdf2_i387_with_temp */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9929;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9929: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9930;
  x1 = XEXP (x0, 0);
  goto L57023;

 L9930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9931;
  x1 = XEXP (x0, 0);
  goto L57023;

 L9931: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9932;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9933;
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9933: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16736 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 797;  /* *movhicc_noc */
    }
  x1 = XEXP (x0, 0);
  goto L57023;

 L9004: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 56)
    goto L9005;
  x1 = XEXP (x0, 0);
  goto L57025;

 L9005: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9006;
    }
  x1 = XEXP (x0, 0);
  goto L57025;

 L9006: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15377 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 731;  /* fisthi2 */
    }
  x1 = XEXP (x0, 0);
  goto L57025;

 L9125: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L57665;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57665: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57668;
    case UNSPEC_VOLATILE:
      goto L57670;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57668: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L57671;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57671: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 64LL:
      goto L9126;
    case 65LL:
      goto L9138;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9126: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9127;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9127: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 743;  /* *fisthi2_floor_1 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9138: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L9139;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9139: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ())
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 744;  /* *fisthi2_ceil_1 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57670: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 37)
    goto L10441;
  x1 = XEXP (x0, 0);
  goto L8070;

 L10441: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 851;  /* fnstsw */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57017: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L8101;
  goto L8070;

 L8101: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 27)
    goto L8102;
  x1 = XEXP (x0, 0);
  goto L8070;

 L8102: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L57673;
    case SImode:
      goto L57674;
    case HImode:
      goto L57675;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57673: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L8103;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8103: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13111 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 3;
      return 634;  /* paritydi2_cmp */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57674: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L8118;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8118: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13141 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 635;  /* paritysi2_cmp */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57675: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L8131;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8131: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13164 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 636;  /* *parityhi2_cmp */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57018: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L8336;
    }
  goto L8070;

 L8336: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode)
    goto L57677;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57677: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57687;
    case SQRT:
      goto L8608;
    case IF_THEN_ELSE:
      goto L9982;
    case SMAX:
      goto L9996;
    case SMIN:
      goto L10002;
    case PLUS:
    case MINUS:
    case MULT:
    case DIV:
      goto L57676;
    default:
      x1 = XEXP (x0, 0);
      goto L8070;
   }
 L57676: ATTRIBUTE_UNUSED_LABEL
  if (binary_fp_operator (x1, SFmode))
    {
      operands[3] = x1;
      goto L8337;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57687: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57693;
    case 2:
      goto L57696;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57693: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 44LL:
      goto L8385;
    case 33LL:
      goto L8576;
    case 45LL:
      goto L8603;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8385: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8386;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8386: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13704 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE_MATH))
    {
      return 659;  /* *rcpsf2_sse */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8576: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8577;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8577: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13980 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 687;  /* truncxfsf2_i387_noop_unspec */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8603: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8604;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8604: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14013 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE_MATH))
    {
      return 692;  /* *rsqrtsf2_sse */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57696: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 82LL:
      goto L8942;
    case 49LL:
      goto L10020;
    case 48LL:
      goto L10026;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8942: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8943;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8943: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L8944;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8944: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15205 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ROUND))
    {
      return 723;  /* sse4_1_roundsf2 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10020: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L10021;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10021: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L10022;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10022: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 809;  /* *ieee_smaxsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10026: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L10027;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10027: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L10028;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10028: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 810;  /* *ieee_sminsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8609;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8609: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14035 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 693;  /* *sqrtsf2_sse */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L9983;
    }
  if (fcmov_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9974;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L9984;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L9985;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9985: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_XOP))
    {
      return 803;  /* *xop_pcmov_sf */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9974: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9975;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9975: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9976;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9976: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L9977;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L9978;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9978: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16885 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 802;  /* *movsfcc_1_387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L9997;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L9998;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9998: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16972 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 805;  /* smaxsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L10003;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L10004;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10004: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16972 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 806;  /* sminsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode)
    goto L57702;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57702: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT)
    goto L8415;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8338;
    }
 L57700: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8391;
    }
 L57701: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L8403;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L57703;
    case SImode:
      goto L57704;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57703: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L8416;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L8417;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8417: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13758 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, HImode)
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 664;  /* *fop_sf_2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57704: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8430;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L8431;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8431: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13758 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, SImode)
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 666;  /* *fop_sf_2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L8339;
    }
  x2 = XEXP (x1, 0);
  goto L57700;

 L8339: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13624 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_MIX_SSE_I387
   && COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 651;  /* *fop_sf_comm_mixed */
    }
 L8351: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
   && COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 653;  /* *fop_sf_comm_sse */
    }
 L8363: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13662 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (SFmode)
   && COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 655;  /* *fop_sf_comm_i387 */
    }
 L8375: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13677 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_MIX_SSE_I387
   && !COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 657;  /* *fop_sf_1_mixed */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57700;

 L8391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode)
    goto L57706;
  x2 = XEXP (x1, 0);
  goto L57701;

 L57706: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == FLOAT)
    goto L8444;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L8392;
    }
  x2 = XEXP (x1, 0);
  goto L57701;

 L8444: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L57707;
    case SImode:
      goto L57708;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L57701;

 L57707: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L8445;
    }
  x2 = XEXP (x1, 0);
  goto L57701;

 L8445: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13779 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, HImode)
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 668;  /* *fop_sf_3_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57701;

 L57708: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L8459;
    }
  x2 = XEXP (x1, 0);
  goto L57701;

 L8459: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13779 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, SImode)
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 670;  /* *fop_sf_3_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57701;

 L8392: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13717 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
   && !COMMUTATIVE_ARITH_P (operands[3])))
    {
      return 660;  /* *fop_sf_1_sse */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57701;

 L8403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L8404;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8404: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (SFmode)
   && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   && !COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 662;  /* *fop_sf_1_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57019: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L8342;
    }
  goto L8070;

 L8342: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode)
    goto L57710;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57710: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57718;
    case SQRT:
      goto L8613;
    case IF_THEN_ELSE:
      goto L9989;
    case SMAX:
      goto L10008;
    case SMIN:
      goto L10014;
    case PLUS:
    case MINUS:
    case MULT:
    case DIV:
      goto L57709;
    default:
      x1 = XEXP (x0, 0);
      goto L8070;
   }
 L57709: ATTRIBUTE_UNUSED_LABEL
  if (binary_fp_operator (x1, DFmode))
    {
      operands[3] = x1;
      goto L8343;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57718: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L57722;
    case 2:
      goto L57723;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57722: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 33)
    goto L8581;
  x1 = XEXP (x0, 0);
  goto L8070;

 L8581: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8582;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8582: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13980 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 688;  /* truncxfdf2_i387_noop_unspec */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57723: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 82LL:
      goto L8948;
    case 49LL:
      goto L10032;
    case 48LL:
      goto L10038;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8948: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L8949;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8949: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_15_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L8950;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8950: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15205 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ROUND))
    {
      return 724;  /* sse4_1_rounddf2 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10032: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L10033;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10033: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L10034;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10034: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 811;  /* *ieee_smaxdf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10038: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L10039;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10039: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L10040;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10040: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 812;  /* *ieee_smindf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L8614;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8614: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14035 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 694;  /* *sqrtdf2_sse */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L9990;
    }
  if (fcmov_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9965;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L9991;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9991: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L9992;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9992: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_XOP))
    {
      return 804;  /* *xop_pcmov_df */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9965: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9966;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9967;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L9968;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L9969;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9969: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16850 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_CMOVE
   && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 801;  /* *movdfcc_1 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L10009;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L10010;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10010: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16972 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 807;  /* smaxdf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L10015;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10015: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L10016;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10016: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16972 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 808;  /* smindf3 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8343: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L57729;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57729: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FLOAT:
      goto L8422;
    case FLOAT_EXTEND:
      goto L8471;
    case REG:
    case SUBREG:
    case MEM:
      goto L57726;
    default:
      goto L57727;
   }
 L57726: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L8344;
    }
 L57727: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L8397;
    }
 L57728: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L8409;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8422: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L57731;
    case SImode:
      goto L57732;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57731: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L8423;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8423: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L8424;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8424: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13758 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, HImode)
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 665;  /* *fop_df_2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57732: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8437;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8437: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L8438;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8438: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13758 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, SImode)
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 667;  /* *fop_df_2_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode)
    goto L57733;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57733: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8472;
    }
 L57734: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L8486;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L8473;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L57734;

 L8473: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13800 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (DFmode)
   && !(TARGET_SSE2 && TARGET_SSE_MATH)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 672;  /* *fop_df_4_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L57734;

 L8486: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == FLOAT_EXTEND)
    goto L8487;
  x1 = XEXP (x0, 0);
  goto L8070;

 L8487: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L8488;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8488: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13838 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (DFmode)
   && !(TARGET_SSE2 && TARGET_SSE_MATH)))
    {
      return 674;  /* *fop_df_6_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L8345;
    }
  x2 = XEXP (x1, 0);
  goto L57727;

 L8345: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13624 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_MIX_SSE_I387
   && COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 652;  /* *fop_df_comm_mixed */
    }
 L8357: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
   && COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 654;  /* *fop_df_comm_sse */
    }
 L8369: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13662 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (DFmode)
   && COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 656;  /* *fop_df_comm_i387 */
    }
 L8381: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13677 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_MIX_SSE_I387
   && !COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 658;  /* *fop_df_1_mixed */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57727;

 L8397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode)
    goto L57736;
  x2 = XEXP (x1, 0);
  goto L57728;

 L57736: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FLOAT:
      goto L8451;
    case FLOAT_EXTEND:
      goto L8479;
    case REG:
    case SUBREG:
    case MEM:
      goto L57735;
    default:
      x2 = XEXP (x1, 0);
      goto L57728;
   }
 L57735: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L8398;
    }
  x2 = XEXP (x1, 0);
  goto L57728;

 L8451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L57738;
    case SImode:
      goto L57739;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L57728;

 L57738: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L8452;
    }
  x2 = XEXP (x1, 0);
  goto L57728;

 L8452: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13779 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, HImode)
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 669;  /* *fop_df_3_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57728;

 L57739: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L8466;
    }
  x2 = XEXP (x1, 0);
  goto L57728;

 L8466: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13779 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, SImode)
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 671;  /* *fop_df_3_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57728;

 L8479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L8480;
    }
  x2 = XEXP (x1, 0);
  goto L57728;

 L8480: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13819 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (DFmode)
   && !(TARGET_SSE2 && TARGET_SSE_MATH)))
    {
      return 673;  /* *fop_df_5_i387 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57728;

 L8398: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13717 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
   && !COMMUTATIVE_ARITH_P (operands[3])))
    {
      return 661;  /* *fop_df_1_sse */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L57728;

 L8409: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L8410;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8410: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_ARITH (DFmode)
   && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   && !COMMUTATIVE_ARITH_P (operands[3])
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 663;  /* *fop_df_1_i387 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57020: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, XFmode))
    {
      operands[0] = x1;
      goto L8491;
    }
  goto L8070;

 L8491: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == XFmode)
    goto L57741;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57741: ATTRIBUTE_UNUSED_LABEL
  tem = recog_10 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57026: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L9945;
    }
  goto L8070;

 L9945: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L9946;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L9947;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9947: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L9948;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9948: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9949;
  x1 = XEXP (x0, 0);
  goto L8070;

 L9949: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L9950;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9950: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L9951;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L9951: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16771 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL))
    {
      return 799;  /* *movqicc_noc */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57027: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, CCZmode))
    {
      operands[0] = x1;
      goto L10266;
    }
  goto L8070;

 L10266: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCZmode)
    goto L57816;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57816: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == UNSPEC)
    goto L57818;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57818: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L57820;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57820: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 79LL:
      goto L10267;
    case 81LL:
      goto L10297;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10267: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L57822;
    case DImode:
      goto L57823;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57822: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10268;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10268: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10269;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10269: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 831;  /* stack_protect_test_si */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57823: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10283;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10283: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10284;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10284: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 832;  /* stack_protect_test_di */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10297: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L57824;
    case DImode:
      goto L57825;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57824: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10298;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10298: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10299;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10299: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 833;  /* stack_tls_protect_test_si */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57825: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10313;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10313: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10314;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10314: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 834;  /* stack_tls_protect_test_di */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57028: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, BLKmode))
    {
      operands[0] = x1;
      goto L10352;
    }
  goto L8070;

 L10352: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == BLKmode)
    goto L57826;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57826: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == UNSPEC_VOLATILE)
    goto L57832;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57832: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L57838;
  x1 = XEXP (x0, 0);
  goto L8070;

 L57838: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 19LL:
      goto L10353;
    case 23LL:
      goto L10360;
    case 27LL:
      goto L10365;
    case 33LL:
      goto L10370;
    case 29LL:
      goto L10375;
    case 35LL:
      goto L10411;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10353: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_FXSR))
    {
      return 841;  /* fxsave */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10360: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10361;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10361: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18462 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_XSAVE))
    {
      return 843;  /* xsave */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10365: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10366;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10366: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18462 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_XSAVE) && 
#line 18423 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_XSAVEOPT)))
    {
      return 844;  /* xsaveopt */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10370: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10371;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10371: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18462 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_XSAVE) && 
#line 18424 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_XSAVEC)))
    {
      return 845;  /* xsavec */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10375: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10376;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10376: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18462 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_XSAVE) && 
#line 18425 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_XSAVES)))
    {
      return 846;  /* xsaves */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10411: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18553 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 9;
      return 849;  /* fnstenv */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L57029: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L10465;
  goto L8070;

 L10465: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCCmode
      && GET_CODE (x1) == UNSPEC_VOLATILE
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 14)
    goto L10466;
  x1 = XEXP (x0, 0);
  goto L8070;

 L10466: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L10467;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10467: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10468;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10468: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10469;
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L10469: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18679 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LWP))
    {
      return 858;  /* *lwp_lwpinssi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L8070;

 L8071: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L8072;
    }
  goto L10507;

 L8072: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == BSWAP)
    goto L8073;
  x1 = XEXP (x0, 0);
  goto L10507;

 L8073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 13041 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_XCHGB || optimize_function_for_size_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 632;  /* *bswaphi_lowpart_1 */
    }
 L8086: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[0])
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 633;  /* bswaphi_lowpart */
    }
  x1 = XEXP (x0, 0);
  goto L10507;

 L10508: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == BLKmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 35)
    goto L10509;
  x1 = XEXP (x0, 0);
  goto L10531;

 L10509: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (rtx_equal_p (x2, operands[0]))
    {
      return 863;  /* *pause */
    }
  x1 = XEXP (x0, 0);
  goto L10531;

 L57030: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L10532;
  goto L51691;

 L10532: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCZmode
      && GET_CODE (x1) == UNSPEC_VOLATILE
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 44)
    goto L10533;
  x1 = XEXP (x0, 0);
  goto L51691;

 L10533: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18820 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RTM))
    {
      return 867;  /* xtest_1 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57031: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, BND32mode))
    {
      operands[0] = x1;
      goto L10544;
    }
 L57033: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, BND32mode))
    {
      operands[0] = x1;
      goto L10560;
    }
  goto L51691;

 L10544: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == BND32mode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 88)
    goto L10545;
  x1 = XEXP (x0, 0);
  goto L57033;

 L10545: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (bnd_mem_operator (x2, SImode))
    {
      operands[3] = x2;
      goto L10546;
    }
  x1 = XEXP (x0, 0);
  goto L57033;

 L10546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 89)
    goto L10547;
  x1 = XEXP (x0, 0);
  goto L57033;

 L10547: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L10548;
    }
  x1 = XEXP (x0, 0);
  goto L57033;

 L10548: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (address_mpx_no_base_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L10549;
    }
  x1 = XEXP (x0, 0);
  goto L57033;

 L10549: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18876 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 871;  /* *bnd32_mk */
    }
  x1 = XEXP (x0, 0);
  goto L57033;

 L10560: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, BND32mode))
    {
      operands[1] = x1;
      goto L10561;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10561: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18891 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 873;  /* *movbnd32_internal_mpx */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57032: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, BND64mode))
    {
      operands[0] = x1;
      goto L10552;
    }
 L57034: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, BND64mode))
    {
      operands[0] = x1;
      goto L10564;
    }
  goto L51691;

 L10552: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == BND64mode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 88)
    goto L10553;
  x1 = XEXP (x0, 0);
  goto L57034;

 L10553: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (bnd_mem_operator (x2, DImode))
    {
      operands[3] = x2;
      goto L10554;
    }
  x1 = XEXP (x0, 0);
  goto L57034;

 L10554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 89)
    goto L10555;
  x1 = XEXP (x0, 0);
  goto L57034;

 L10555: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L10556;
    }
  x1 = XEXP (x0, 0);
  goto L57034;

 L10556: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (address_mpx_no_base_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L10557;
    }
  x1 = XEXP (x0, 0);
  goto L57034;

 L10557: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18876 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 872;  /* *bnd64_mk */
    }
  x1 = XEXP (x0, 0);
  goto L57034;

 L10564: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, BND64mode))
    {
      operands[1] = x1;
      goto L10565;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10565: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18891 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 874;  /* *movbnd64_internal_mpx */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57035: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L10660;
    }
 L57048: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L11391;
    }
 L57107: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L12433;
    }
 L57135: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L35512;
    }
  goto L51691;

 L10660: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57844;
  x1 = XEXP (x0, 0);
  goto L57048;

 L57844: ATTRIBUTE_UNUSED_LABEL
  tem = recog_11 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57048;

 L11391: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L11392;
  x1 = XEXP (x0, 0);
  goto L57107;

 L11392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SImode:
      goto L57939;
    case V4SImode:
      goto L57940;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L57939: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L11393;
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L11393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L11394;
  x1 = XEXP (x0, 0);
  goto L57107;

 L11394: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L57942;
  x1 = XEXP (x0, 0);
  goto L57107;

 L57942: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 0LL:
        goto L57944;
      case 1LL:
        goto L57945;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L57107;

 L57944: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1282 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 987;  /* *vec_extractv2si_0 */
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L57945: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1300 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 988;  /* *vec_extractv2si_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L57940: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L35495;
    }
 L57941: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L35507;
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L35495: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35496;
  x2 = XEXP (x1, 0);
  goto L57941;

 L35496: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 12680 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 3443;  /* *vec_extractv4si_0 */
    }
  x2 = XEXP (x1, 0);
  goto L57941;

 L35507: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35508;
  x1 = XEXP (x0, 0);
  goto L57107;

 L35508: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L35509;
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L35509: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12719 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3445;  /* *vec_extractv4si */
    }
  x1 = XEXP (x0, 0);
  goto L57107;

 L12433: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57946;
  x1 = XEXP (x0, 0);
  goto L57135;

 L57946: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L57948;
    case UNSPEC_VOLATILE:
      goto L57949;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57135;

 L57948: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 103)
    goto L12434;
  x1 = XEXP (x0, 0);
  goto L57135;

 L12434: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L12435;
    }
  x1 = XEXP (x0, 0);
  goto L57135;

 L12435: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1499 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 1148;  /* sse2_movntisi */
    }
  x1 = XEXP (x0, 0);
  goto L57135;

 L57949: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 52)
    goto L35785;
  x1 = XEXP (x0, 0);
  goto L57135;

 L35785: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 13148 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3476;  /* sse_stmxcsr */
    }
  x1 = XEXP (x0, 0);
  goto L57135;

 L35512: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L57950;
  x1 = XEXP (x0, 0);
  goto L51691;

 L57950: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L35513;
    case UNSPEC:
      goto L57952;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L35514;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35515;
  x1 = XEXP (x0, 0);
  goto L51691;

 L35515: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35516;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35516: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3446;  /* *vec_extractv4si_mem */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57952: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 43)
    goto L35736;
  x1 = XEXP (x0, 0);
  goto L51691;

 L35736: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L57953;
    case V4SFmode:
      goto L57954;
    case V4DFmode:
      goto L57955;
    case V2DFmode:
      goto L57956;
    case V32QImode:
      goto L57957;
    case V16QImode:
      goto L57958;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57953: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L35737;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35737: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3467;  /* avx_movmskps256 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57954: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L35742;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35742: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3468;  /* sse_movmskps */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57955: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L35747;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35747: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 3469;  /* avx_movmskpd256 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57956: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L35752;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35752: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13076 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3470;  /* sse2_movmskpd */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57957: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L35757;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35757: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13086 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2))
    {
      return 3471;  /* avx2_pmovmskb */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57958: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L35762;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35762: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13096 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 3472;  /* sse2_pmovmskb */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57049: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == MEM)
    goto L11450;
 L57036: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8QImode))
    {
      operands[0] = x1;
      goto L10665;
    }
 L57045: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8QImode))
    {
      operands[0] = x1;
      goto L10884;
    }
  goto L51691;

 L11450: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L57959;
    case DImode:
      goto L57960;
    default:
      break;
    }
  goto L57036;

 L57959: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L11451;
    }
  goto L57036;

 L11451: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8QImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 42)
    goto L11452;
  x1 = XEXP (x0, 0);
  goto L57036;

 L11452: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11453;
    }
  x1 = XEXP (x0, 0);
  goto L57036;

 L11453: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11454;
    }
  x1 = XEXP (x0, 0);
  goto L57036;

 L11454: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == MEM)
    goto L11455;
  x1 = XEXP (x0, 0);
  goto L57036;

 L11455: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0])
      && (
#line 1545 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 993;  /* *mmx_maskmovq */
    }
  x1 = XEXP (x0, 0);
  goto L57036;

 L57960: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L11459;
    }
  goto L57036;

 L11459: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8QImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 42)
    goto L11460;
  x1 = XEXP (x0, 0);
  goto L57036;

 L11460: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11461;
    }
  x1 = XEXP (x0, 0);
  goto L57036;

 L11461: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11462;
    }
  x1 = XEXP (x0, 0);
  goto L57036;

 L11462: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == V8QImode
      && GET_CODE (x2) == MEM)
    goto L11463;
  x1 = XEXP (x0, 0);
  goto L57036;

 L11463: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0])
      && (
#line 1545 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 994;  /* *mmx_maskmovq */
    }
  x1 = XEXP (x0, 0);
  goto L57036;

 L10665: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (vector_move_operand (x1, V8QImode))
    {
      operands[1] = x1;
      goto L10666;
    }
  x1 = XEXP (x0, 0);
  goto L57045;

 L10666: ATTRIBUTE_UNUSED_LABEL
  if (
#line 84 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 886;  /* *movv8qi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57045;

 L10884: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8QImode)
    goto L57961;
  x1 = XEXP (x0, 0);
  goto L51691;

 L57961: ATTRIBUTE_UNUSED_LABEL
  tem = recog_12 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L51691;

 L57037: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4HImode))
    {
      operands[0] = x1;
      goto L10669;
    }
 L57046: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4HImode))
    {
      operands[0] = x1;
      goto L10896;
    }
 L57141: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4HImode))
    {
      operands[0] = x1;
      goto L44686;
    }
  goto L51691;

 L10669: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (vector_move_operand (x1, V4HImode))
    {
      operands[1] = x1;
      goto L10670;
    }
  x1 = XEXP (x0, 0);
  goto L57046;

 L10670: ATTRIBUTE_UNUSED_LABEL
  if (
#line 84 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 887;  /* *movv4hi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57046;

 L10896: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4HImode)
    goto L57990;
  x1 = XEXP (x0, 0);
  goto L57141;

 L57990: ATTRIBUTE_UNUSED_LABEL
  tem = recog_14 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57141;

 L44686: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4HImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 142)
    goto L44687;
  x1 = XEXP (x0, 0);
  goto L51691;

 L44687: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L44688;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L44688: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L44689;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L44689: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17935 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_F16C || TARGET_AVX512VL))
    {
      return 4324;  /* *vcvtps2ph_store */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57038: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2SImode))
    {
      operands[0] = x1;
      goto L10673;
    }
 L57043: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2SImode))
    {
      operands[0] = x1;
      goto L10812;
    }
  goto L51691;

 L10673: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (vector_move_operand (x1, V2SImode))
    {
      operands[1] = x1;
      goto L10674;
    }
  x1 = XEXP (x0, 0);
  goto L57043;

 L10674: ATTRIBUTE_UNUSED_LABEL
  if (
#line 84 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 888;  /* *movv2si_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57043;

 L10812: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2SImode)
    goto L58036;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58036: ATTRIBUTE_UNUSED_LABEL
  tem = recog_15 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L51691;

 L57039: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V1DImode))
    {
      operands[0] = x1;
      goto L10677;
    }
 L57047: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V1DImode))
    {
      operands[0] = x1;
      goto L10920;
    }
  goto L51691;

 L10677: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (vector_move_operand (x1, V1DImode))
    {
      operands[1] = x1;
      goto L10678;
    }
  x1 = XEXP (x0, 0);
  goto L57047;

 L10678: ATTRIBUTE_UNUSED_LABEL
  if (
#line 84 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 889;  /* *movv1di_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57047;

 L10920: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V1DImode)
    goto L58079;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58079: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L10921;
    case MINUS:
      goto L10927;
    case MULT:
      goto L11052;
    case ASHIFT:
      goto L11125;
    case LSHIFTRT:
      goto L11131;
    case UNSPEC:
      goto L58085;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V1DImode))
    {
      operands[1] = x2;
      goto L10922;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10922: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V1DImode))
    {
      operands[2] = x2;
      goto L10923;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10923: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V1DImode == V1DImode))
   && ix86_binary_operator_ok (PLUS, V1DImode, operands)))
    {
      return 925;  /* *mmx_addv1di3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10927: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V1DImode))
    {
      operands[1] = x2;
      goto L10928;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V1DImode))
    {
      operands[2] = x2;
      goto L10929;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L10929: ATTRIBUTE_UNUSED_LABEL
  if (
#line 671 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
((TARGET_MMX || (TARGET_SSE2 && V1DImode == V1DImode))
   && ix86_binary_operator_ok (MINUS, V1DImode, operands)))
    {
      return 926;  /* *mmx_subv1di3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11052: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V1DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L11053;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11053: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V1SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L11054;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11054: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SImode))
    {
      operands[1] = x4;
      goto L11055;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11055: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L11056;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11056: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L11057;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V1DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L11058;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11058: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V1SImode
      && GET_CODE (x3) == VEC_SELECT)
    goto L11059;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11059: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2SImode))
    {
      operands[2] = x4;
      goto L11060;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11060: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L11061;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11061: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 874 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE2 && ix86_binary_operator_ok (MULT, V2SImode, operands)))
    {
      return 940;  /* *sse2_umulv1siv1di3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V1DImode))
    {
      operands[1] = x2;
      goto L11126;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11126: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11127;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11127: ATTRIBUTE_UNUSED_LABEL
  if (
#line 936 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 951;  /* mmx_ashlv1di3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V1DImode))
    {
      operands[1] = x2;
      goto L11132;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11132: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11133;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11133: ATTRIBUTE_UNUSED_LABEL
  if (
#line 936 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 952;  /* mmx_lshrv1di3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L58085: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 46)
    goto L11440;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11440: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8QImode))
    {
      operands[1] = x2;
      goto L11441;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11441: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8QImode))
    {
      operands[2] = x2;
      goto L11442;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11442: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1517 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 991;  /* mmx_psadbw */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57040: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2SFmode))
    {
      operands[0] = x1;
      goto L22616;
    }
 L57042: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2SFmode))
    {
      operands[0] = x1;
      goto L10690;
    }
  goto L51691;

 L22616: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2SFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L22617;
  if (vector_move_operand (x1, V2SFmode))
    {
      operands[1] = x1;
      goto L10682;
    }
  x1 = XEXP (x0, 0);
  goto L57042;

 L22617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22618;
    }
  x1 = XEXP (x0, 0);
  goto L57042;

 L22618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L22619;
  x1 = XEXP (x0, 0);
  goto L57042;

 L22619: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58086;
  x1 = XEXP (x0, 0);
  goto L57042;

 L58086: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 2LL:
        goto L22620;
      case 0LL:
        goto L22637;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L57042;

 L22620: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 6166 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2234;  /* sse_storehps */
    }
  x1 = XEXP (x0, 0);
  goto L57042;

 L22637: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6221 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2236;  /* sse_storelps */
    }
  x1 = XEXP (x0, 0);
  goto L57042;

 L10682: ATTRIBUTE_UNUSED_LABEL
  if (
#line 84 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 890;  /* *movv2sf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57042;

 L10690: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2SFmode)
    goto L58088;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58088: ATTRIBUTE_UNUSED_LABEL
  tem = recog_16 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L51691;

 L57041: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L10685;
    }
 L57111: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L15619;
    }
 L57134: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L35499;
    }
  goto L51691;

 L10685: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 97)
    goto L10686;
  x1 = XEXP (x0, 0);
  goto L57111;

 L10686: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10687;
    }
  x1 = XEXP (x0, 0);
  goto L57111;

 L10687: ATTRIBUTE_UNUSED_LABEL
  if (
#line 229 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 891;  /* sse_movntq */
    }
  x1 = XEXP (x0, 0);
  goto L57111;

 L15619: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L58122;
  x1 = XEXP (x0, 0);
  goto L57134;

 L58122: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L58131;
    case AND:
      goto L15627;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57134;

 L58131: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L58139;
    case 1:
      goto L58141;
    case 2:
      goto L58142;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L58139: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 135LL:
      goto L15620;
    case 151LL:
      goto L15716;
    case 109LL:
      goto L37806;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15620: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L15621;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15621: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L15622;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15622: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15623;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15623: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1498;  /* avx512bw_cmpv64qi3 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15716: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L15717;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15717: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L15718;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15718: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_7_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L15719;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15719: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1510;  /* avx512bw_ucmpv64qi3 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L37806: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L37807;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L37807: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L37808;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L37808: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L37809;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L37809: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13837 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3539;  /* ssse3_palignrdi */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L58141: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 187)
    goto L21917;
  x1 = XEXP (x0, 0);
  goto L57134;

 L21917: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L21918;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L21918: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4985 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 2177;  /* avx512bw_cvtb2maskv64qi */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L58142: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 167LL:
      goto L31620;
    case 168LL:
      goto L31926;
    case 152LL:
      goto L32892;
    case 153LL:
      goto L33060;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31620: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L31621;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31621: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L31622;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31622: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V64QImode, operands)))
    {
      return 3103;  /* avx512bw_eqv64qi3_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31926: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L31927;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31927: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L31928;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31928: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3148;  /* avx512bw_gtv64qi3 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32892: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L32893;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32893: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L32894;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32894: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3271;  /* avx512bw_testmv64qi3 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33060: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L33061;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33061: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[2] = x2;
      goto L33062;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33062: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 3295;  /* avx512bw_testnmv64qi3 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode)
    goto L58147;
  x1 = XEXP (x0, 0);
  goto L57134;

 L58147: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L58153;
  x1 = XEXP (x0, 0);
  goto L57134;

 L58153: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L58159;
    case 2:
      goto L58161;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L58159: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 135LL:
      goto L15628;
    case 151LL:
      goto L15724;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15628: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L15629;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L15630;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15630: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15631;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L15632;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15632: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2526 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1499;  /* avx512bw_cmpv64qi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15724: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L15725;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15725: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L15726;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15726: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15727;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L15728;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L15728: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2540 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1511;  /* avx512bw_ucmpv64qi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L58161: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 167LL:
      goto L31627;
    case 168LL:
      goto L31933;
    case 152LL:
      goto L32899;
    case 153LL:
      goto L33067;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31627: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L31628;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31628: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L31629;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L31630;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31630: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10414 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && ix86_binary_operator_ok (EQ, V64QImode, operands))))
    {
      return 3104;  /* avx512bw_eqv64qi3_mask_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31933: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L31934;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31934: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L31935;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31935: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L31936;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L31936: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 10527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3149;  /* avx512bw_gtv64qi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32899: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L32900;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32900: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L32901;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32901: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L32902;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L32902: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3272;  /* avx512bw_testmv64qi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33067: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L33068;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V64QImode))
    {
      operands[2] = x3;
      goto L33069;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33069: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L33070;
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L33070: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 11039 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3296;  /* avx512bw_testnmv64qi3_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57134;

 L35499: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L35500;
  x1 = XEXP (x0, 0);
  goto L51691;

 L35500: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L35501;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35502;
  x1 = XEXP (x0, 0);
  goto L51691;

 L35502: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58165;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58165: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 0LL:
        goto L58167;
      case 1LL:
        goto L58168;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L51691;

 L58167: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12701 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !TARGET_64BIT
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 3444;  /* *vec_extractv2di_0_sse */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L58168: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12787 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 3447;  /* *vec_extractv2di_1 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57044: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L10872;
    }
 L57114: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L16507;
    }
 L57138: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L37983;
    }
  goto L51691;

 L10872: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L10873;
  x1 = XEXP (x0, 0);
  goto L57114;

 L10873: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L58169;
    case V4SFmode:
      goto L58170;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L58169: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L10874;
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L10874: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L10875;
  x1 = XEXP (x0, 0);
  goto L57114;

 L10875: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58172;
  x1 = XEXP (x0, 0);
  goto L57114;

 L58172: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 0LL:
        goto L58174;
      case 1LL:
        goto L58175;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L57114;

 L58174: ATTRIBUTE_UNUSED_LABEL
  if (
#line 589 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 917;  /* *vec_extractv2sf_0 */
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L58175: ATTRIBUTE_UNUSED_LABEL
  if (
#line 607 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 918;  /* *vec_extractv2sf_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L58170: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22739;
    }
 L58171: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22745;
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L22739: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L22740;
  x2 = XEXP (x1, 0);
  goto L58171;

 L22740: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 6525 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2251;  /* *vec_extractv4sf_0 */
    }
  x2 = XEXP (x1, 0);
  goto L58171;

 L22745: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L22746;
  x1 = XEXP (x0, 0);
  goto L57114;

 L22746: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L22747;
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L22747: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6541 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 2252;  /* *sse4_1_extractps */
    }
  x1 = XEXP (x0, 0);
  goto L57114;

 L16507: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode)
    goto L58176;
  x1 = XEXP (x0, 0);
  goto L57138;

 L58176: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case AND:
      goto L16508;
    case IOR:
      goto L16535;
    case XOR:
      goto L16541;
    case FMA:
      goto L16583;
    case UNSPEC:
      goto L58183;
    case VEC_SELECT:
      goto L22751;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode)
    goto L58185;
  x1 = XEXP (x0, 0);
  goto L57138;

 L58185: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16509;
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L16530;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L16510;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L16511;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16511: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 1604;  /* *andnotsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16530: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L16531;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16531: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 1607;  /* *andsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16535: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L16536;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16536: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L16537;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16537: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 1608;  /* *iorsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L16542;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L16543;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16543: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 1609;  /* *xorsf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode)
    goto L58188;
  x1 = XEXP (x0, 0);
  goto L57138;

 L58188: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17484;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L16584;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17484: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L17485;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L17486;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17486: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == SFmode)
    goto L58190;
  x1 = XEXP (x0, 0);
  goto L57138;

 L58190: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17903;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L17487;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17903: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L17904;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17904: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1744;  /* *fma_fnmsub_sf */
    }
 L18138: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1764;  /* *fma_fnmsub_sf */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17487: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1704;  /* *fma_fnmadd_sf */
    }
 L17535: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1710;  /* *fma_fnmadd_sf */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16584: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L16585;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16585: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == SFmode)
    goto L58192;
  x1 = XEXP (x0, 0);
  goto L57138;

 L58192: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17014;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L16586;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17014: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L17015;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L17015: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1660;  /* *fma_fmsub_sf */
    }
 L17063: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1666;  /* *fma_fmsub_sf */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L16586: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3201 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1616;  /* *fma_fmadd_sf */
    }
 L16628: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1622;  /* *fma_fmadd_sf */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L58183: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L58193;
    case 1:
      goto L58194;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L58193: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 123)
    goto L18623;
  x1 = XEXP (x0, 0);
  goto L57138;

 L18623: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L18624;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L18624: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L18625;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L18625: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == SFmode)
    goto L58196;
  x1 = XEXP (x0, 0);
  goto L57138;

 L58196: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19096;
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L18626;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L19096: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L19097;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L19097: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1852;  /* *fma_fmsubadd_sf */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L18626: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1806;  /* *fma_fmaddsub_sf */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L58194: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 127)
    goto L40801;
  x1 = XEXP (x0, 0);
  goto L57138;

 L40801: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L40802;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L40802: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3830;  /* xop_frczsf2 */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L22751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L22752;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L22752: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L22753;
  x1 = XEXP (x0, 0);
  goto L57138;

 L22753: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L22754;
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L22754: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6582 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 2253;  /* *vec_extractv4sf_mem */
    }
  x1 = XEXP (x0, 0);
  goto L57138;

 L37983: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 103)
    goto L37984;
  x1 = XEXP (x0, 0);
  goto L51691;

 L37984: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == SFmode)
    goto L58198;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58198: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L37995;
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L37985;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37995: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L37996;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37996: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L37997;
  x1 = XEXP (x0, 0);
  goto L51691;

 L37997: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 13943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3569;  /* sse4a_vmmovntv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37985: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13931 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3567;  /* sse4a_movntsf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57050: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V64QImode))
    {
      operands[0] = x1;
      goto L11472;
    }
 L57083: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V64QImode))
    {
      operands[0] = x1;
      goto L11640;
    }
 L57101: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V64QImode))
    {
      operands[0] = x1;
      goto L11892;
    }
  goto L51691;

 L11472: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonimmediate_or_sse_const_operand (x1, V64QImode))
    {
      operands[1] = x1;
      goto L11473;
    }
  x1 = XEXP (x0, 0);
  goto L57083;

 L11473: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V64QImode)
       || register_operand (operands[1], V64QImode))) && 
#line 165 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 997;  /* *movv64qi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57083;

 L11640: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V64QImode)
    goto L58199;
  x1 = XEXP (x0, 0);
  goto L57101;

 L58199: ATTRIBUTE_UNUSED_LABEL
  tem = recog_20 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57101;

 L11892: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V64QImode)
    goto L58302;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58302: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11893;
    case UNSPEC:
      goto L58304;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V64QImode)
    goto L58306;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58306: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12377;
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L11894;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12377: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V64QImode))
    {
      operands[1] = x3;
      goto L12378;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12378: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12379;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12379: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L12380;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12380: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1465 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1140;  /* avx512bw_storedquv64qi_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11895;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11895: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L11896;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11896: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1037 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1066;  /* avx512bw_storev64qi_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L58304: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12278;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12278: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L12279;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12279: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1422 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1124;  /* avx512f_storedquv64qi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57051: ATTRIBUTE_UNUSED_LABEL
  tem = recog_23 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57136: ATTRIBUTE_UNUSED_LABEL
  tem = recog_34 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57053: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V32HImode))
    {
      operands[0] = x1;
      goto L11484;
    }
 L57086: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V32HImode))
    {
      operands[0] = x1;
      goto L11661;
    }
 L57104: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V32HImode))
    {
      operands[0] = x1;
      goto L11913;
    }
  goto L51691;

 L11484: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonimmediate_or_sse_const_operand (x1, V32HImode))
    {
      operands[1] = x1;
      goto L11485;
    }
  x1 = XEXP (x0, 0);
  goto L57086;

 L11485: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V32HImode)
       || register_operand (operands[1], V32HImode))) && 
#line 166 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1000;  /* *movv32hi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57086;

 L11661: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32HImode)
    goto L58733;
  x1 = XEXP (x0, 0);
  goto L57104;

 L58733: ATTRIBUTE_UNUSED_LABEL
  tem = recog_36 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57104;

 L11913: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32HImode)
    goto L58873;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58873: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11914;
    case UNSPEC:
      goto L58875;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11914: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V32HImode)
    goto L58877;
  x1 = XEXP (x0, 0);
  goto L51691;

 L58877: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12401;
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L11915;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12401: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V32HImode))
    {
      operands[1] = x3;
      goto L12402;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12402: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12403;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L12404;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12404: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1465 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1143;  /* avx512bw_storedquv32hi_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11916;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11916: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L11917;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11917: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1037 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1069;  /* avx512bw_storev32hi_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L58875: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12283;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12283: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L12284;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12284: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1422 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW))
    {
      return 1125;  /* avx512bw_storedquv32hi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57054: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16HImode))
    {
      operands[0] = x1;
      goto L23395;
    }
 L57087: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V16HImode))
    {
      operands[0] = x1;
      goto L11668;
    }
 L57105: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V16HImode))
    {
      operands[0] = x1;
      goto L11920;
    }
  goto L51691;

 L23395: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16HImode)
    goto L58878;
 L11488: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_or_sse_const_operand (x1, V16HImode))
    {
      operands[1] = x1;
      goto L11489;
    }
  x1 = XEXP (x0, 0);
  goto L57087;

 L58878: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L23396;
    case SS_TRUNCATE:
      goto L25751;
    case TRUNCATE:
      goto L25756;
    case US_TRUNCATE:
      goto L25761;
    case VEC_MERGE:
      goto L25820;
    case UNSPEC:
      goto L58884;
    default:
     break;
   }
  goto L11488;

 L23396: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L23397;
    }
  goto L11488;

 L23397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L23398;
  goto L11488;

 L23398: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L58885;
  goto L11488;

 L58885: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 0LL:
        goto L23399;
      case 16LL:
        goto L23420;
      default:
        break;
      }
  goto L11488;

 L23399: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23400;
  goto L11488;

 L23400: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23401;
  goto L11488;

 L23401: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L23402;
  goto L11488;

 L23402: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L23403;
  goto L11488;

 L23403: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L23404;
  goto L11488;

 L23404: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L23405;
  goto L11488;

 L23405: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L23406;
  goto L11488;

 L23406: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L23407;
  goto L11488;

 L23407: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L23408;
  goto L11488;

 L23408: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L23409;
  goto L11488;

 L23409: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L23410;
  goto L11488;

 L23410: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L23411;
  goto L11488;

 L23411: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L23412;
  goto L11488;

 L23412: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L23413;
  goto L11488;

 L23413: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && 
#line 7146 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2308;  /* vec_extract_lo_v32hi */
    }
  goto L11488;

 L23420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L23421;
  goto L11488;

 L23421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L23422;
  goto L11488;

 L23422: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L23423;
  goto L11488;

 L23423: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L23424;
  goto L11488;

 L23424: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L23425;
  goto L11488;

 L23425: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L23426;
  goto L11488;

 L23426: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L23427;
  goto L11488;

 L23427: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L23428;
  goto L11488;

 L23428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L23429;
  goto L11488;

 L23429: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L23430;
  goto L11488;

 L23430: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L23431;
  goto L11488;

 L23431: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L23432;
  goto L11488;

 L23432: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L23433;
  goto L11488;

 L23433: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L23434;
  goto L11488;

 L23434: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && 
#line 7169 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2309;  /* vec_extract_hi_v32hi */
    }
  goto L11488;

 L25751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L25752;
    }
  goto L11488;

 L25752: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2524;  /* *avx512f_ss_truncatev16siv16hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L25756: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L25757;
    }
  goto L11488;

 L25757: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2525;  /* *avx512f_truncatev16siv16hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L25761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L25762;
    }
  goto L11488;

 L25762: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8548 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2526;  /* *avx512f_us_truncatev16siv16hi2 */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L25820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L58887;
  goto L11488;

 L58887: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SS_TRUNCATE:
      goto L25821;
    case TRUNCATE:
      goto L25829;
    case US_TRUNCATE:
      goto L25837;
    case UNSPEC:
      goto L58891;
    default:
     break;
   }
  goto L11488;

 L25821: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L25822;
    }
  goto L11488;

 L25822: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L25823;
    }
  goto L11488;

 L25823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L25824;
    }
  goto L11488;

 L25824: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2536;  /* avx512f_ss_truncatev16siv16hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L25829: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L25830;
    }
  goto L11488;

 L25830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L25831;
    }
  goto L11488;

 L25831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L25832;
    }
  goto L11488;

 L25832: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2537;  /* avx512f_truncatev16siv16hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L25837: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L25838;
    }
  goto L11488;

 L25838: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[2] = x2;
      goto L25839;
    }
  goto L11488;

 L25839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L25840;
    }
  goto L11488;

 L25840: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8562 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 2538;  /* avx512f_us_truncatev16siv16hi2_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L58891: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 142)
    goto L44715;
  goto L11488;

 L44715: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L44716;
    }
  goto L11488;

 L44716: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L44717;
    }
  goto L11488;

 L44717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (vector_move_operand (x2, V16HImode))
    {
      operands[3] = x2;
      goto L44718;
    }
  goto L11488;

 L44718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L44719;
    }
  goto L11488;

 L44719: ATTRIBUTE_UNUSED_LABEL
  if (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4328;  /* avx512f_vcvtps2ph512_mask */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L58884: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 142)
    goto L44708;
  goto L11488;

 L44708: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L44709;
    }
  goto L11488;

 L44709: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L44710;
    }
  goto L11488;

 L44710: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17959 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4327;  /* *avx512f_vcvtps2ph512 */
    }
  x1 = XEXP (x0, 1);
  goto L11488;

 L11489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V16HImode)
       || register_operand (operands[1], V16HImode))) && 
#line 166 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1001;  /* *movv16hi_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57087;

 L11668: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16HImode)
    goto L58892;
  x1 = XEXP (x0, 0);
  goto L57105;

 L58892: ATTRIBUTE_UNUSED_LABEL
  tem = recog_43 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57105;

 L11920: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16HImode)
    goto L59054;
  x1 = XEXP (x0, 0);
  goto L51691;

 L59054: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11921;
    case UNSPEC:
      goto L59056;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16HImode)
    goto L59058;
  x1 = XEXP (x0, 0);
  goto L51691;

 L59058: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12409;
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L11922;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12409: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L12410;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12410: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12411;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12411: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L12412;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12412: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1465 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1144;  /* avx512vl_storedquv16hi_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11922: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11923;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L11924;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11924: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1037 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 183 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1070;  /* avx512vl_storev16hi_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L59056: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 105)
    goto L12293;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12293: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L12294;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12294: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1422 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW) && 
#line 295 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1127;  /* avx512vl_storedquv16hi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57055: ATTRIBUTE_UNUSED_LABEL
  tem = recog_50 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57142: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V16SImode))
    {
      operands[5] = x1;
      goto L49311;
    }
 L57056: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16SImode))
    {
      operands[0] = x1;
      goto L51455;
    }
 L57071: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V16SImode))
    {
      operands[0] = x1;
      goto L11556;
    }
 L57089: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V16SImode))
    {
      operands[0] = x1;
      goto L11808;
    }
  goto L51691;

 L49311: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L59333;
    case DImode:
      goto L59334;
    default:
      break;
    }
  goto L57056;

 L59333: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49312;
  goto L57056;

 L49312: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49313;
    }
  goto L57056;

 L49313: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L59335;
    case V8DImode:
      goto L59336;
    default:
      break;
    }
  goto L57056;

 L59335: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L49314;
    }
  goto L57056;

 L49314: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49315;
    }
  goto L57056;

 L49315: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49316;
  x1 = XEXP (x0, 0);
  goto L57056;

 L49316: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L49317;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49317: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L49318;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49318: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4497;  /* *avx512f_scattersiv16si */
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L59336: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L49866;
    }
  goto L57056;

 L49866: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49867;
    }
  goto L57056;

 L49867: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49868;
  x1 = XEXP (x0, 0);
  goto L57056;

 L49868: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49869;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49869: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L49870;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49870: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4521;  /* *avx512f_scatterdiv16si */
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L59334: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49335;
  goto L57056;

 L49335: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49336;
    }
  goto L57056;

 L49336: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L59337;
    case V8DImode:
      goto L59338;
    default:
      break;
    }
  goto L57056;

 L59337: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L49337;
    }
  goto L57056;

 L49337: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49338;
    }
  goto L57056;

 L49338: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49339;
  x1 = XEXP (x0, 0);
  goto L57056;

 L49339: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L49340;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SImode))
    {
      operands[3] = x2;
      goto L49341;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49341: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4498;  /* *avx512f_scattersiv16si */
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L59338: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L49889;
    }
  goto L57056;

 L49889: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49890;
    }
  goto L57056;

 L49890: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49891;
  x1 = XEXP (x0, 0);
  goto L57056;

 L49891: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49892;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49892: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SImode))
    {
      operands[3] = x2;
      goto L49893;
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L49893: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4522;  /* *avx512f_scatterdiv16si */
    }
  x1 = XEXP (x0, 0);
  goto L57056;

 L51455: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L51456;
  if (nonimmediate_or_sse_const_operand (x1, V16SImode))
    {
      operands[1] = x1;
      goto L11497;
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L51456: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SImode:
      goto L59339;
    case V8SImode:
      goto L59340;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L59339: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L51457;
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L51457: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4680;  /* avx512f_si512_si */
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L59340: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L51472;
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L51472: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18633 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4683;  /* avx512f_si512_256si */
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L11497: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V16SImode)
       || register_operand (operands[1], V16SImode))) && 
#line 167 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1003;  /* *movv16si_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57071;

 L11556: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode)
    goto L59341;
  x1 = XEXP (x0, 0);
  goto L57089;

 L59341: ATTRIBUTE_UNUSED_LABEL
  tem = recog_53 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57089;

 L11808: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode)
    goto L59543;
  x1 = XEXP (x0, 0);
  goto L51691;

 L59543: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11809;
    case UNSPEC:
      goto L59546;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SImode)
    goto L59549;
  x1 = XEXP (x0, 0);
  goto L51691;

 L59549: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12329;
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L11810;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12329: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L12330;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12331;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12331: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L12332;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12332: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1134;  /* avx512f_storedquv16si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11810: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11811;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11811: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L11812;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11812: ATTRIBUTE_UNUSED_LABEL
  if (
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1054;  /* avx512f_storev16si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L59546: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L59550;
    case 3:
      goto L59551;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L59550: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 105)
    goto L12298;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12298: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L12299;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12299: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1434 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1128;  /* avx512f_storedquv16si */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L59551: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 165)
    goto L50487;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50487: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L50488;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50488: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50489;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50489: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L50490;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50490: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4557;  /* avx512f_compressstorev16si_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57146: ATTRIBUTE_UNUSED_LABEL
  tem = recog_59 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57150: ATTRIBUTE_UNUSED_LABEL
  tem = recog_66 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57144: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8DImode))
    {
      operands[5] = x1;
      goto L49403;
    }
 L57059: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8DImode))
    {
      operands[0] = x1;
      goto L11508;
    }
 L57074: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8DImode))
    {
      operands[0] = x1;
      goto L11577;
    }
 L57092: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V8DImode))
    {
      operands[0] = x1;
      goto L11829;
    }
  goto L51691;

 L49403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L60186;
    case DImode:
      goto L60187;
    default:
      break;
    }
  goto L57059;

 L60186: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49404;
  goto L57059;

 L49404: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49405;
    }
  goto L57059;

 L49405: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L60188;
    case V8DImode:
      goto L60189;
    default:
      break;
    }
  goto L57059;

 L60188: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49406;
    }
  goto L57059;

 L49406: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49407;
    }
  goto L57059;

 L49407: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49408;
  x1 = XEXP (x0, 0);
  goto L57059;

 L49408: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49409;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49409: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L49410;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49410: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4501;  /* *avx512f_scattersiv8di */
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L60189: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L49958;
    }
  goto L57059;

 L49958: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49959;
    }
  goto L57059;

 L49959: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49960;
  x1 = XEXP (x0, 0);
  goto L57059;

 L49960: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49961;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49961: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L49962;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49962: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4525;  /* *avx512f_scatterdiv8di */
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L60187: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49427;
  goto L57059;

 L49427: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49428;
    }
  goto L57059;

 L49428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L60190;
    case V8DImode:
      goto L60191;
    default:
      break;
    }
  goto L57059;

 L60190: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49429;
    }
  goto L57059;

 L49429: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49430;
    }
  goto L57059;

 L49430: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49431;
  x1 = XEXP (x0, 0);
  goto L57059;

 L49431: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49432;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49432: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L49433;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49433: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4502;  /* *avx512f_scattersiv8di */
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L60191: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L49981;
    }
  goto L57059;

 L49981: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49982;
    }
  goto L57059;

 L49982: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49983;
  x1 = XEXP (x0, 0);
  goto L57059;

 L49983: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49984;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49984: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DImode))
    {
      operands[3] = x2;
      goto L49985;
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L49985: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4526;  /* *avx512f_scatterdiv8di */
    }
  x1 = XEXP (x0, 0);
  goto L57059;

 L11508: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonimmediate_or_sse_const_operand (x1, V8DImode))
    {
      operands[1] = x1;
      goto L11509;
    }
  x1 = XEXP (x0, 0);
  goto L57074;

 L11509: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V8DImode)
       || register_operand (operands[1], V8DImode))) && 
#line 168 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1006;  /* *movv8di_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57074;

 L11577: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DImode)
    goto L60192;
  x1 = XEXP (x0, 0);
  goto L57092;

 L60192: ATTRIBUTE_UNUSED_LABEL
  tem = recog_70 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57092;

 L11829: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DImode)
    goto L60430;
  x1 = XEXP (x0, 0);
  goto L51691;

 L60430: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11830;
    case UNSPEC:
      goto L60434;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DImode)
    goto L60438;
  x1 = XEXP (x0, 0);
  goto L51691;

 L60438: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12353;
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L11831;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12353: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L12354;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12355;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12355: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12356;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12356: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1137;  /* avx512f_storedquv8di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11832;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11833;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11833: ATTRIBUTE_UNUSED_LABEL
  if (
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1057;  /* avx512f_storev8di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L60434: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L60439;
    case 3:
      goto L60441;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L60439: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12313;
    case 103LL:
      goto L12469;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12313: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L12314;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12314: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1434 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1131;  /* avx512f_storedquv8di */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12469: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L12470;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12470: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1520 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 303 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1155;  /* avx512f_movntv8di */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L60441: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 165)
    goto L50501;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50501: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L50502;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50502: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50503;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50503: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50504;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50504: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4559;  /* avx512f_compressstorev8di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57148: ATTRIBUTE_UNUSED_LABEL
  tem = recog_74 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57152: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V2DImode))
    {
      operands[5] = x1;
      goto L49771;
    }
 L57061: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2DImode))
    {
      operands[0] = x1;
      goto L22824;
    }
 L57076: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2DImode))
    {
      operands[0] = x1;
      goto L11591;
    }
 L57094: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V2DImode))
    {
      operands[0] = x1;
      goto L11843;
    }
 L57117: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2DImode))
    {
      operands[0] = x1;
      goto L22832;
    }
  goto L51691;

 L49771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L60723;
    case DImode:
      goto L60724;
    default:
      break;
    }
  goto L57061;

 L60723: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49772;
  goto L57061;

 L49772: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49773;
    }
  goto L57061;

 L49773: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L60725;
    case V2DImode:
      goto L60726;
    default:
      break;
    }
  goto L57061;

 L60725: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49774;
    }
  goto L57061;

 L49774: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49775;
    }
  goto L57061;

 L49775: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49776;
  x1 = XEXP (x0, 0);
  goto L57061;

 L49776: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49777;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L49777: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L49778;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L49778: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4517;  /* *avx512f_scattersiv2di */
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L60726: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50326;
    }
  goto L57061;

 L50326: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50327;
    }
  goto L57061;

 L50327: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50328;
  x1 = XEXP (x0, 0);
  goto L57061;

 L50328: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50329;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L50329: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L50330;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L50330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4541;  /* *avx512f_scatterdiv2di */
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L60724: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49795;
  goto L57061;

 L49795: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49796;
    }
  goto L57061;

 L49796: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V4SImode:
      goto L60727;
    case V2DImode:
      goto L60728;
    default:
      break;
    }
  goto L57061;

 L60727: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L49797;
    }
  goto L57061;

 L49797: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49798;
    }
  goto L57061;

 L49798: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49799;
  x1 = XEXP (x0, 0);
  goto L57061;

 L49799: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49800;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L49800: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L49801;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L49801: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4518;  /* *avx512f_scattersiv2di */
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L60728: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L50349;
    }
  goto L57061;

 L50349: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50350;
    }
  goto L57061;

 L50350: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50351;
  x1 = XEXP (x0, 0);
  goto L57061;

 L50351: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50352;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L50352: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[3] = x2;
      goto L50353;
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L50353: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4542;  /* *avx512f_scatterdiv2di */
    }
  x1 = XEXP (x0, 0);
  goto L57061;

 L22824: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L22825;
  if (nonimmediate_or_sse_const_operand (x1, V2DImode))
    {
      operands[1] = x1;
      goto L11517;
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L22825: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8DImode:
      goto L60729;
    case V4DImode:
      goto L60730;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L60729: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L22826;
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L22826: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L22827;
  x1 = XEXP (x0, 0);
  goto L57076;

 L22827: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L22828;
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L22828: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L22829;
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L22829: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6683 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (INTVAL (operands[2]) == INTVAL (operands[3]) - 1)))
    {
      return 2260;  /* *avx512dq_vextracti64x2_1 */
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L60730: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L23185;
    }
 L60731: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L23221;
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L23185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L23186;
  x2 = XEXP (x1, 0);
  goto L60731;

 L23186: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L23187;
  x2 = XEXP (x1, 0);
  goto L60731;

 L23187: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6979 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX
   && 1 && 1
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2288;  /* vec_extract_lo_v4di */
    }
  x2 = XEXP (x1, 0);
  goto L60731;

 L23221: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L23222;
  x1 = XEXP (x0, 0);
  goto L57076;

 L23222: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L23223;
  x1 = XEXP (x0, 0);
  goto L57076;

 L23223: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7018 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && 1))
    {
      return 2292;  /* vec_extract_hi_v4di */
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L11517: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V2DImode)
       || register_operand (operands[1], V2DImode))))
    {
      return 1008;  /* *movv2di_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57076;

 L11591: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode)
    goto L60732;
  x1 = XEXP (x0, 0);
  goto L57094;

 L60732: ATTRIBUTE_UNUSED_LABEL
  tem = recog_75 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57094;

 L11843: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode)
    goto L60774;
  x1 = XEXP (x0, 0);
  goto L57117;

 L60774: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11844;
    case UNSPEC:
      goto L60779;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57117;

 L11844: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DImode)
    goto L60784;
  x1 = XEXP (x0, 0);
  goto L57117;

 L60784: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L60786;
    case VEC_SELECT:
      goto L22770;
    case REG:
    case SUBREG:
      goto L60783;
    default:
      x1 = XEXP (x0, 0);
      goto L57117;
   }
 L60783: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L11845;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L60786: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12369;
  x1 = XEXP (x0, 0);
  goto L57117;

 L12369: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L12370;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L12370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12371;
  x1 = XEXP (x0, 0);
  goto L57117;

 L12371: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12372;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L12372: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1449 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 263 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1139;  /* avx512vl_storedquv2di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L22771;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22771: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 2)
    goto L22772;
  x1 = XEXP (x0, 0);
  goto L57117;

 L22772: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L22773;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22773: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_7_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L22774;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22774: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (memory_operand (x2, V2DImode))
    {
      operands[4] = x2;
      goto L22775;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[5] = x2;
      goto L22776;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22776: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ
   && (INTVAL (operands[2]) % 2 == 0)
   && (INTVAL (operands[2]) == INTVAL (operands[3]) - 1)
   && rtx_equal_p (operands[4], operands[0])))
    {
      return 2255;  /* avx512dq_vextracti64x2_1_maskm */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L11845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11846;
  x1 = XEXP (x0, 0);
  goto L57117;

 L11846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11847;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L11847: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1059;  /* avx512vl_storev2di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L60779: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L60787;
    case 3:
      goto L60789;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L60787: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12323;
    case 103LL:
      goto L12479;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L12323: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L12324;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L12324: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1434 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 299 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 1133;  /* avx512vl_storedquv2di */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L12479: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L12480;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L12480: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1520 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 1157;  /* sse2_movntv2di */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L60789: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 42LL:
      goto L44076;
    case 165LL:
      goto L50557;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L44076: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44077;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L44077: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V2DImode))
    {
      operands[2] = x2;
      goto L44078;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L44078: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 17703 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 416 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 4240;  /* avx2_maskstoreq */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L50557: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L50558;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L50558: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50559;
  x1 = XEXP (x0, 0);
  goto L57117;

 L50559: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50560;
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L50560: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4567;  /* avx512vl_compressstorev2di_mask */
    }
  x1 = XEXP (x0, 0);
  goto L57117;

 L22832: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode)
    goto L60791;
  x1 = XEXP (x0, 0);
  goto L51691;

 L60791: ATTRIBUTE_UNUSED_LABEL
  tem = recog_81 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L51691;

 L57062: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4TImode))
    {
      operands[0] = x1;
      goto L11520;
    }
 L57127: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4TImode))
    {
      operands[0] = x1;
      goto L30263;
    }
  goto L51691;

 L11520: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonimmediate_or_sse_const_operand (x1, V4TImode))
    {
      operands[1] = x1;
      goto L11521;
    }
  x1 = XEXP (x0, 0);
  goto L57127;

 L11521: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V4TImode)
       || register_operand (operands[1], V4TImode))) && 
#line 169 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 1009;  /* *movv4ti_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57127;

 L30263: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4TImode)
    goto L61051;
  x1 = XEXP (x0, 0);
  goto L51691;

 L61051: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case ASHIFT:
      goto L30264;
    case LSHIFTRT:
      goto L30282;
    case UNSPEC:
      goto L61054;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4TImode))
    {
      operands[1] = x2;
      goto L30265;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30266;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30266: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10030 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2917;  /* avx512bw_ashlv4ti3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V4TImode))
    {
      operands[1] = x2;
      goto L30283;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30284;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30284: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10069 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 2920;  /* avx512bw_lshrv4ti3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L61054: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 109)
    goto L37785;
  x1 = XEXP (x0, 0);
  goto L51691;

 L37785: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V4TImode))
    {
      operands[1] = x2;
      goto L37786;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37786: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4TImode))
    {
      operands[2] = x2;
      goto L37787;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37787: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L37788;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37788: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13808 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 368 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512BW)))
    {
      return 3536;  /* avx512bw_palignrv4ti */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57063: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2TImode))
    {
      operands[0] = x1;
      goto L11524;
    }
 L57128: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2TImode))
    {
      operands[0] = x1;
      goto L30269;
    }
  goto L51691;

 L11524: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonimmediate_or_sse_const_operand (x1, V2TImode))
    {
      operands[1] = x1;
      goto L11525;
    }
  x1 = XEXP (x0, 0);
  goto L57128;

 L11525: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V2TImode)
       || register_operand (operands[1], V2TImode))) && 
#line 169 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1010;  /* *movv2ti_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57128;

 L30269: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2TImode)
    goto L61055;
  x1 = XEXP (x0, 0);
  goto L51691;

 L61055: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case ASHIFT:
      goto L30270;
    case LSHIFTRT:
      goto L30288;
    case UNSPEC:
      goto L61058;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2TImode))
    {
      operands[1] = x2;
      goto L30271;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30272;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30272: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10030 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2918;  /* avx2_ashlv2ti3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2TImode))
    {
      operands[1] = x2;
      goto L30289;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30289: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30290;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30290: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10069 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2) && 
#line 364 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 2921;  /* avx2_lshrv2ti3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L61058: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 109)
    goto L37792;
  x1 = XEXP (x0, 0);
  goto L51691;

 L37792: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V2TImode))
    {
      operands[1] = x2;
      goto L37793;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37793: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2TImode))
    {
      operands[2] = x2;
      goto L37794;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37794: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L37795;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37795: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13808 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3) && 
#line 368 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2)))
    {
      return 3537;  /* avx2_palignrv2ti */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57064: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V1TImode))
    {
      operands[0] = x1;
      goto L11528;
    }
 L57129: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V1TImode))
    {
      operands[0] = x1;
      goto L30275;
    }
  goto L51691;

 L11528: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (nonimmediate_or_sse_const_operand (x1, V1TImode))
    {
      operands[1] = x1;
      goto L11529;
    }
  x1 = XEXP (x0, 0);
  goto L57129;

 L11529: ATTRIBUTE_UNUSED_LABEL
  if (
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V1TImode)
       || register_operand (operands[1], V1TImode))))
    {
      return 1011;  /* *movv1ti_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57129;

 L30275: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V1TImode)
    goto L61059;
  x1 = XEXP (x0, 0);
  goto L51691;

 L61059: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case ASHIFT:
      goto L30276;
    case LSHIFTRT:
      goto L30294;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30276: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V1TImode))
    {
      operands[1] = x2;
      goto L30277;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30278;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30278: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10030 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2919;  /* sse2_ashlv1ti3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30294: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V1TImode))
    {
      operands[1] = x2;
      goto L30295;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L30296;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L30296: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10069 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 2922;  /* sse2_lshrv1ti3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57143: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V16SFmode))
    {
      operands[5] = x1;
      goto L49357;
    }
 L57065: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16SFmode))
    {
      operands[0] = x1;
      goto L51460;
    }
 L57077: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V16SFmode))
    {
      operands[0] = x1;
      goto L11598;
    }
 L57095: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V16SFmode))
    {
      operands[0] = x1;
      goto L11850;
    }
  goto L51691;

 L49357: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L61061;
    case DImode:
      goto L61062;
    default:
      break;
    }
  goto L57065;

 L61061: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49358;
  goto L57065;

 L49358: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49359;
    }
  goto L57065;

 L49359: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L61063;
    case V8DImode:
      goto L61064;
    default:
      break;
    }
  goto L57065;

 L61063: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L49360;
    }
  goto L57065;

 L49360: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49361;
    }
  goto L57065;

 L49361: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49362;
  x1 = XEXP (x0, 0);
  goto L57065;

 L49362: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L49363;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49363: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L49364;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49364: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4499;  /* *avx512f_scattersiv16sf */
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L61064: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L49912;
    }
  goto L57065;

 L49912: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49913;
    }
  goto L57065;

 L49913: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49914;
  x1 = XEXP (x0, 0);
  goto L57065;

 L49914: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49915;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49915: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L49916;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49916: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4523;  /* *avx512f_scatterdiv16sf */
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L61062: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49381;
  goto L57065;

 L49381: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49382;
    }
  goto L57065;

 L49382: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L61065;
    case V8DImode:
      goto L61066;
    default:
      break;
    }
  goto L57065;

 L61065: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L49383;
    }
  goto L57065;

 L49383: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49384;
    }
  goto L57065;

 L49384: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49385;
  x1 = XEXP (x0, 0);
  goto L57065;

 L49385: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L49386;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49386: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L49387;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49387: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4500;  /* *avx512f_scattersiv16sf */
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L61066: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L49935;
    }
  goto L57065;

 L49935: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49936;
    }
  goto L57065;

 L49936: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49937;
  x1 = XEXP (x0, 0);
  goto L57065;

 L49937: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49938;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49938: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L49939;
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L49939: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4524;  /* *avx512f_scatterdiv16sf */
    }
  x1 = XEXP (x0, 0);
  goto L57065;

 L51460: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L51461;
  if (nonimmediate_or_sse_const_operand (x1, V16SFmode))
    {
      operands[1] = x1;
      goto L11533;
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L51461: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L61067;
    case V8SFmode:
      goto L61068;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L61067: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L51462;
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L51462: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4681;  /* avx512f_ps512_ps */
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L61068: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L51477;
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L51477: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18633 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4684;  /* avx512f_ps512_256ps */
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L11533: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V16SFmode)
       || register_operand (operands[1], V16SFmode))) && 
#line 170 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1012;  /* *movv16sf_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57077;

 L11598: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode)
    goto L61069;
  x1 = XEXP (x0, 0);
  goto L57095;

 L61069: ATTRIBUTE_UNUSED_LABEL
  tem = recog_87 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57095;

 L11850: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode)
    goto L61339;
  x1 = XEXP (x0, 0);
  goto L51691;

 L61339: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11851;
    case UNSPEC:
      goto L61343;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V16SFmode)
    goto L61347;
  x1 = XEXP (x0, 0);
  goto L51691;

 L61347: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12065;
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L11852;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12065: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L12066;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12066: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12067;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12067: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L12068;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12068: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1227 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1092;  /* avx512f_storeups512_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11852: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11853;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L11854;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11854: ATTRIBUTE_UNUSED_LABEL
  if (
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1060;  /* avx512f_storev16sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L61343: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L61348;
    case 3:
      goto L61350;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L61348: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12034;
    case 103LL:
      goto L12439;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12034: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L12035;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12035: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1086;  /* avx512f_storeups512 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12439: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L12440;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12440: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1149;  /* avx512f_movntv16sf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L61350: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 165)
    goto L50494;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50494: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L50495;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50495: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50496;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50496: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L50497;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50497: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4558;  /* avx512f_compressstorev16sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57147: ATTRIBUTE_UNUSED_LABEL
  tem = recog_93 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57151: ATTRIBUTE_UNUSED_LABEL
  tem = recog_100 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57145: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8DFmode))
    {
      operands[5] = x1;
      goto L49449;
    }
 L57068: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8DFmode))
    {
      operands[0] = x1;
      goto L51465;
    }
 L57080: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8DFmode))
    {
      operands[0] = x1;
      goto L11619;
    }
 L57098: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V8DFmode))
    {
      operands[0] = x1;
      goto L11871;
    }
  goto L51691;

 L49449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L62095;
    case DImode:
      goto L62096;
    default:
      break;
    }
  goto L57068;

 L62095: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49450;
  goto L57068;

 L49450: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L49451;
    }
  goto L57068;

 L49451: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L62097;
    case V8DImode:
      goto L62098;
    default:
      break;
    }
  goto L57068;

 L62097: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49452;
    }
  goto L57068;

 L49452: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49453;
    }
  goto L57068;

 L49453: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49454;
  x1 = XEXP (x0, 0);
  goto L57068;

 L49454: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49455;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L49455: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L49456;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L49456: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4503;  /* *avx512f_scattersiv8df */
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L62098: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L50004;
    }
  goto L57068;

 L50004: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50005;
    }
  goto L57068;

 L50005: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50006;
  x1 = XEXP (x0, 0);
  goto L57068;

 L50006: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50007;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L50007: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L50008;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L50008: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4527;  /* *avx512f_scatterdiv8df */
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L62096: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L49473;
  goto L57068;

 L49473: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L49474;
    }
  goto L57068;

 L49474: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L62099;
    case V8DImode:
      goto L62100;
    default:
      break;
    }
  goto L57068;

 L62099: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L49475;
    }
  goto L57068;

 L49475: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L49476;
    }
  goto L57068;

 L49476: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L49477;
  x1 = XEXP (x0, 0);
  goto L57068;

 L49477: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L49478;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L49478: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L49479;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L49479: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4504;  /* *avx512f_scattersiv8df */
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L62100: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L50027;
    }
  goto L57068;

 L50027: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L50028;
    }
  goto L57068;

 L50028: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 154)
    goto L50029;
  x1 = XEXP (x0, 0);
  goto L57068;

 L50029: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, QImode))
    {
      operands[6] = x2;
      goto L50030;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L50030: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L50031;
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L50031: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4528;  /* *avx512f_scatterdiv8df */
    }
  x1 = XEXP (x0, 0);
  goto L57068;

 L51465: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L51466;
  if (nonimmediate_or_sse_const_operand (x1, V8DFmode))
    {
      operands[1] = x1;
      goto L11545;
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L51466: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V2DFmode:
      goto L62101;
    case V4DFmode:
      goto L62102;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L62101: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L51467;
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L51467: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4682;  /* avx512f_pd512_pd */
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L62102: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L51482;
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L51482: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18633 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4685;  /* avx512f_pd512_256pd */
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L11545: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && (register_operand (operands[0], V8DFmode)
       || register_operand (operands[1], V8DFmode))) && 
#line 171 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1015;  /* *movv8df_internal */
    }
  x1 = XEXP (x0, 0);
  goto L57080;

 L11619: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode)
    goto L62103;
  x1 = XEXP (x0, 0);
  goto L57098;

 L62103: ATTRIBUTE_UNUSED_LABEL
  tem = recog_104 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57098;

 L11871: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode)
    goto L62376;
  x1 = XEXP (x0, 0);
  goto L51691;

 L62376: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_MERGE:
      goto L11872;
    case UNSPEC:
      goto L62380;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11872: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8DFmode)
    goto L62384;
  x1 = XEXP (x0, 0);
  goto L51691;

 L62384: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 105)
    goto L12089;
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L11873;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12089: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12090;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L12091;
  x1 = XEXP (x0, 0);
  goto L51691;

 L12091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L12092;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12092: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1227 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1095;  /* avx512f_storeupd512_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11873: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L11874;
  x1 = XEXP (x0, 0);
  goto L51691;

 L11874: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L11875;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L11875: ATTRIBUTE_UNUSED_LABEL
  if (
#line 999 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 1063;  /* avx512f_storev8df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L62380: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 1:
      goto L62385;
    case 3:
      goto L62387;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L62385: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 105LL:
      goto L12049;
    case 103LL:
      goto L12454;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12049: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L12050;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12050: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1089;  /* avx512f_storeupd512 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12454: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L12455;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L12455: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1510 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1152;  /* avx512f_movntv8df */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L62387: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 165)
    goto L50508;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50508: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L50509;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50509: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L50510;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50510: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50511;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50511: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18375 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))
    {
      return 4560;  /* avx512f_compressstorev8df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57149: ATTRIBUTE_UNUSED_LABEL
  tem = recog_109 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57153: ATTRIBUTE_UNUSED_LABEL
  tem = recog_115 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L51691;

 L57108: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L14854;
    }
 L57126: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L25669;
    }
 L57139: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L37988;
    }
  goto L51691;

 L14854: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode)
    goto L63061;
  x1 = XEXP (x0, 0);
  goto L57126;

 L63061: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L14855;
    case MINUS:
      goto L14867;
    case AND:
      goto L16515;
    case IOR:
      goto L16553;
    case XOR:
      goto L16559;
    case FMA:
      goto L16590;
    case UNSPEC:
      goto L63069;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L57126;

 L14855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L14856;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14857;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L14857: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L14858;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14858: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_1_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L14859;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L14859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L14860;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L14861;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14861: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L14862;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14862: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (const_0_to_1_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L14863;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L14863: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2157 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3
   && INTVAL (operands[2]) != INTVAL (operands[3])))
    {
      return 1430;  /* *sse3_haddv2df3_low */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L14867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L14868;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14868: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14869;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L14869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L14870;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14870: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L14871;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L14872;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14872: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L14873;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14873: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L14874;
  x1 = XEXP (x0, 0);
  goto L57126;

 L14874: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 2176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 1431;  /* *sse3_hsubv2df3_low */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L63071;
  x1 = XEXP (x0, 0);
  goto L57126;

 L63071: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16516;
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L16548;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L16517;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L16518;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16518: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 1605;  /* *andnotdf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L16549;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16549: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 1610;  /* *anddf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L16554;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16554: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L16555;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16555: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 1611;  /* *iordf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16559: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L16560;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16560: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L16561;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16561: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3015 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 1612;  /* *xordf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16590: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L63074;
  x1 = XEXP (x0, 0);
  goto L57126;

 L63074: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17492;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L16591;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17492: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L17493;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L17494;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == DFmode)
    goto L63076;
  x1 = XEXP (x0, 0);
  goto L57126;

 L63076: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17924;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L17495;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17924: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L17925;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17925: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1746;  /* *fma_fnmsub_df */
    }
 L18237: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1773;  /* *fma_fnmsub_df */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17495: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3337 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1705;  /* *fma_fnmadd_df */
    }
 L17625: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1719;  /* *fma_fnmadd_df */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16591: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L16592;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_MODE (x2) == DFmode)
    goto L63078;
  x1 = XEXP (x0, 0);
  goto L57126;

 L63078: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L17022;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L16593;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17022: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L17023;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L17023: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1661;  /* *fma_fmsub_df */
    }
 L17153: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1675;  /* *fma_fmsub_df */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L16593: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3201 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4))
    {
      return 1617;  /* *fma_fmadd_df */
    }
 L16709: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1631;  /* *fma_fmadd_df */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L63069: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 3:
      goto L63079;
    case 1:
      goto L63080;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L63079: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 123)
    goto L18704;
  x1 = XEXP (x0, 0);
  goto L57126;

 L18704: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L18705;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L18705: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L18706;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L18706: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_MODE (x2) == DFmode)
    goto L63082;
  x1 = XEXP (x0, 0);
  goto L57126;

 L63082: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NEG)
    goto L19186;
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L18707;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L19186: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L19187;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L19187: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1861;  /* *fma_fmsubadd_df */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L18707: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && 1))
    {
      return 1815;  /* *fma_fmaddsub_df */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L63080: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 127)
    goto L40806;
  x1 = XEXP (x0, 0);
  goto L57126;

 L40806: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L40807;
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L40807: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP))
    {
      return 3831;  /* xop_frczdf2 */
    }
  x1 = XEXP (x0, 0);
  goto L57126;

 L25669: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L25670;
  x1 = XEXP (x0, 0);
  goto L57139;

 L25670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L25671;
    }
  x1 = XEXP (x0, 0);
  goto L57139;

 L25671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L25672;
  x1 = XEXP (x0, 0);
  goto L57139;

 L25672: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_CODE (x3) == CONST_INT)
    goto L63083;
  x1 = XEXP (x0, 0);
  goto L57139;

 L63083: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case 1LL:
        goto L63087;
      case 0LL:
        goto L63089;
      default:
        break;
      }
  x1 = XEXP (x0, 0);
  goto L57139;

 L63087: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8241 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2511;  /* sse2_storehpd */
    }
 L63088: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8274 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(!TARGET_SSE2 && TARGET_SSE
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2512;  /* *vec_extractv2df_1_sse */
    }
  x1 = XEXP (x0, 0);
  goto L57139;

 L63089: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8291 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2513;  /* sse2_storelpd */
    }
 L63090: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8322 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(!TARGET_SSE2 && TARGET_SSE
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 2514;  /* *vec_extractv2df_0_sse */
    }
  x1 = XEXP (x0, 0);
  goto L57139;

 L37988: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 103)
    goto L37989;
  x1 = XEXP (x0, 0);
  goto L51691;

 L37989: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == DFmode)
    goto L63092;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63092: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L38002;
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L37990;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38002: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L38003;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38003: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L38004;
  x1 = XEXP (x0, 0);
  goto L51691;

 L38004: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 13943 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3570;  /* sse4a_vmmovntv2df */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37990: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13931 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4A))
    {
      return 3568;  /* sse4a_movntdf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57109: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L15339;
    }
 L57131: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L35449;
    }
 L57132: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L35456;
    }
  goto L51691;

 L15339: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L63093;
  x1 = XEXP (x0, 0);
  goto L57131;

 L63093: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L63102;
    case AND:
      goto L15347;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L63096;
    default:
      x1 = XEXP (x0, 0);
      goto L57131;
   }
 L63096: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, HImode))
    {
      operands[3] = x1;
      goto L15996;
    }
  x1 = XEXP (x0, 0);
  goto L57131;

 L63102: ATTRIBUTE_UNUSED_LABEL
  tem = recog_116 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57131;

 L15347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode)
    goto L63138;
  x1 = XEXP (x0, 0);
  goto L57131;

 L63138: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63144;
  x1 = XEXP (x0, 0);
  goto L57131;

 L63144: ATTRIBUTE_UNUSED_LABEL
  tem = recog_117 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57131;

 L15996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L15997;
    }
  x1 = XEXP (x0, 0);
  goto L57131;

 L15997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L15998;
    }
  x1 = XEXP (x0, 0);
  goto L57131;

 L15998: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1542;  /* avx512f_maskcmpv16sf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57131;

 L35449: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L35450;
  x1 = XEXP (x0, 0);
  goto L57132;

 L35450: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L35451;
    }
  x1 = XEXP (x0, 0);
  goto L57132;

 L35451: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35452;
  x1 = XEXP (x0, 0);
  goto L57132;

 L35452: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L35453;
    }
  x1 = XEXP (x0, 0);
  goto L57132;

 L35453: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12602 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3437;  /* *vec_extractv8hi */
    }
  x1 = XEXP (x0, 0);
  goto L57132;

 L35456: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L63175;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63175: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L35457;
    case UNSPEC:
      goto L63178;
    case AND:
      goto L50853;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V8HImode)
    goto L63179;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63179: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L35458;
    }
 L63180: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L35488;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35459;
  x2 = XEXP (x1, 0);
  goto L63180;

 L35459: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L35460;
    }
  x2 = XEXP (x1, 0);
  goto L63180;

 L35460: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12629 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && !TARGET_SSE4_1))
    {
      return 3438;  /* *vec_extractv8hi_sse2 */
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L63180;

 L35488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35489;
  x1 = XEXP (x0, 0);
  goto L51691;

 L35489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35490;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35490: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12672 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3442;  /* *vec_extractv8hi_mem */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63178: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 189)
    goto L50847;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50847: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L50848;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50848: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50849;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50849: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4601;  /* avx512dq_fpclassv16sf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 189)
    goto L50854;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50854: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L50855;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50855: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L50856;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L50857;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50857: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4602;  /* avx512dq_fpclassv16sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57110: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L15377;
    }
 L57130: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L35442;
    }
 L57133: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L35479;
    }
  goto L51691;

 L15377: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L63181;
  x1 = XEXP (x0, 0);
  goto L57130;

 L63181: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L63190;
    case AND:
      goto L15385;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L63184;
    default:
      x1 = XEXP (x0, 0);
      goto L57130;
   }
 L63184: ATTRIBUTE_UNUSED_LABEL
  if (sse_comparison_operator (x1, QImode))
    {
      operands[3] = x1;
      goto L16002;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63190: ATTRIBUTE_UNUSED_LABEL
  tem = recog_118 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57130;

 L15385: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode)
    goto L63251;
  x1 = XEXP (x0, 0);
  goto L57130;

 L63251: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63257;
  x1 = XEXP (x0, 0);
  goto L57130;

 L63257: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L63263;
    case 2:
      goto L63265;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63263: ATTRIBUTE_UNUSED_LABEL
  tem = recog_119 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57130;

 L63265: ATTRIBUTE_UNUSED_LABEL
  tem = recog_120 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x1 = XEXP (x0, 0);
  goto L57130;

 L16002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L63314;
    case V4SFmode:
      goto L63315;
    case V8DFmode:
      goto L63316;
    case V4DFmode:
      goto L63317;
    case V2DFmode:
      goto L63318;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63314: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L16003;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16003: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L16004;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16004: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1543;  /* avx512f_maskcmpv8sf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63315: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L16009;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L16010;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16010: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1544;  /* avx512f_maskcmpv4sf3 */
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63316: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L16015;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16015: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L16016;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16016: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1545;  /* avx512f_maskcmpv8df3 */
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63317: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L16021;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16021: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L16022;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16022: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1546;  /* avx512f_maskcmpv4df3 */
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L63318: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L16027;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L16028;
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L16028: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2600 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1547;  /* avx512f_maskcmpv2df3 */
    }
  x1 = XEXP (x0, 0);
  goto L57130;

 L35442: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L35443;
  x1 = XEXP (x0, 0);
  goto L57133;

 L35443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L35444;
    }
  x1 = XEXP (x0, 0);
  goto L57133;

 L35444: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35445;
  x1 = XEXP (x0, 0);
  goto L57133;

 L35445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L35446;
    }
  x1 = XEXP (x0, 0);
  goto L57133;

 L35446: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12602 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3436;  /* *vec_extractv16qi */
    }
  x1 = XEXP (x0, 0);
  goto L57133;

 L35479: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L63319;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63319: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L35480;
    case UNSPEC:
      goto L63322;
    case AND:
      goto L50867;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L35481;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L35482;
  x1 = XEXP (x0, 0);
  goto L51691;

 L35482: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L35483;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L35483: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12672 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3441;  /* *vec_extractv16qi_mem */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63322: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 189)
    goto L50861;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50861: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L63323;
    case V4SFmode:
      goto L63324;
    case V8DFmode:
      goto L63325;
    case V4DFmode:
      goto L63326;
    case V2DFmode:
      goto L63327;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63323: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L50862;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50862: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50863;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50863: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4603;  /* avx512dq_fpclassv8sf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63324: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L50876;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50876: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50877;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50877: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4605;  /* avx512dq_fpclassv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63325: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L50890;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50890: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50891;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50891: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4607;  /* avx512dq_fpclassv8df */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63326: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L50904;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50904: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50905;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50905: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4609;  /* avx512dq_fpclassv4df */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63327: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L50918;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50918: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_0_to_255_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L50919;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50919: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))
    {
      return 4611;  /* avx512dq_fpclassv2df */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50867: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 189)
    goto L50868;
  x1 = XEXP (x0, 0);
  goto L51691;

 L50868: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L63328;
    case V4SFmode:
      goto L63329;
    case V8DFmode:
      goto L63330;
    case V4DFmode:
      goto L63331;
    case V2DFmode:
      goto L63332;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63328: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L50869;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50869: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L50870;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50870: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50871;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50871: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4604;  /* avx512dq_fpclassv8sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63329: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L50883;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50883: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L50884;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50885;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 18456 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))
    {
      return 4613;  /* avx512dq_vmfpclassv4sf */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50885: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4606;  /* avx512dq_fpclassv4sf_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63330: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L50897;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50897: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L50898;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50899;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50899: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4608;  /* avx512dq_fpclassv8df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63331: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L50911;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50911: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L50912;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50912: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50913;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50913: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4610;  /* avx512dq_fpclassv4df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63332: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L50925;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50925: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L50926;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50926: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L50927;
    }
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 18456 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 4614;  /* avx512dq_vmfpclassv2df */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L50927: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4612;  /* avx512dq_fpclassv2df_mask */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57112: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L16031;
  goto L51691;

 L16031: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCFPmode
      && GET_CODE (x1) == COMPARE)
    goto L16032;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16032: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L63333;
    case DFmode:
      goto L63334;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63333: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L16033;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16033: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[0] = x3;
      goto L16034;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16034: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16035;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16035: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16036;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16036: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L16037;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16038;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16038: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16039;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16039: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 2616 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 1548;  /* sse_comi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63334: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L16059;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16059: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[0] = x3;
      goto L16060;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16060: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16061;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16061: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16062;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L16063;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16064;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16064: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16065;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16065: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 2616 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 1550;  /* sse2_comi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57113: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L16083;
  goto L51691;

 L16083: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCFPUmode
      && GET_CODE (x1) == COMPARE)
    goto L16084;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L63335;
    case DFmode:
      goto L63336;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63335: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L16085;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16085: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[0] = x3;
      goto L16086;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16087;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16087: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16088;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16088: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L16089;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16089: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L16090;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16090: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16091;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16091: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 2636 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode)))
    {
      return 1552;  /* sse_ucomi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63336: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L16111;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16111: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[0] = x3;
      goto L16112;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16112: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16113;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16113: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16114;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16114: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L16115;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16115: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L16116;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16116: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L16117;
  x1 = XEXP (x0, 0);
  goto L51691;

 L16117: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 2636 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode)))
    {
      return 1554;  /* sse2_ucomi */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57115: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, TFmode))
    {
      operands[0] = x1;
      goto L16521;
    }
  goto L51691;

 L16521: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == TFmode)
    goto L63337;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63337: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case AND:
      goto L16522;
    case IOR:
      goto L16571;
    case XOR:
      goto L16577;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16522: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == TFmode)
    goto L63340;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63340: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == NOT)
    goto L16523;
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L16566;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16523: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, TFmode))
    {
      operands[1] = x3;
      goto L16524;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16524: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L16525;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16525: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2968 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1606;  /* *andnottf3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L16567;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16567: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3064 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && ix86_binary_operator_ok (AND, TFmode, operands)))
    {
      return 1613;  /* *andtf3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L16572;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L16573;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16573: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3064 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && ix86_binary_operator_ok (IOR, TFmode, operands)))
    {
      return 1614;  /* *iortf3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16577: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L16578;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L16579;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L16579: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3064 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE
   && ix86_binary_operator_ok (XOR, TFmode, operands)))
    {
      return 1615;  /* *xortf3 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57137: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, TImode))
    {
      operands[0] = x1;
      goto L37798;
    }
  goto L51691;

 L37798: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == TImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 109)
    goto L37799;
  x1 = XEXP (x0, 0);
  goto L51691;

 L37799: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, TImode))
    {
      operands[1] = x2;
      goto L37800;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37800: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, TImode))
    {
      operands[2] = x2;
      goto L37801;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37801: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_mul_8_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L37802;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L37802: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13808 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSSE3))
    {
      return 3538;  /* ssse3_palignrti */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L57140: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L38963;
  goto L51691;

 L38963: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == CCmode)
    goto L63342;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63342: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == UNSPEC)
    goto L63346;
  x1 = XEXP (x0, 0);
  goto L51691;

 L63346: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x1, 0))
    {
    case 2:
      goto L63350;
    case 5:
      goto L63352;
    case 3:
      goto L63353;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63350: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 140LL:
      goto L38964;
    case 120LL:
      goto L38988;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38964: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V8SFmode:
      goto L63354;
    case V4SFmode:
      goto L63355;
    case V4DFmode:
      goto L63356;
    case V2DFmode:
      goto L63357;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63354: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[0] = x2;
      goto L38965;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38965: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L38966;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38966: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 3677;  /* avx_vtestps256 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63355: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[0] = x2;
      goto L38971;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38971: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L38972;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38972: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 3678;  /* avx_vtestps */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63356: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[0] = x2;
      goto L38977;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38977: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L38978;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38978: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 3679;  /* avx_vtestpd256 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63357: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[0] = x2;
      goto L38983;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38983: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L38984;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 14455 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 222 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 3680;  /* avx_vtestpd */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38988: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4DImode:
      goto L63358;
    case V2DImode:
      goto L63359;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63358: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DImode))
    {
      operands[0] = x2;
      goto L38989;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38989: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L38990;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38990: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 3681;  /* avx_ptest256 */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63359: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DImode))
    {
      operands[0] = x2;
      goto L38995;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38995: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L38996;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L38996: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14482 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1))
    {
      return 3682;  /* sse4_1_ptest */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63352: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 121)
    goto L39141;
  x1 = XEXP (x0, 0);
  goto L51691;

 L39141: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L39142;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39142: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L39143;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39143: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[4] = x2;
      goto L39144;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39144: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 3);
  if (register_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L39145;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39145: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 4);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L39146;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39146: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14875 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 3693;  /* sse4_2_pcmpestr_cconly */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L63353: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x1, 1) == 122)
    goto L39229;
  x1 = XEXP (x0, 0);
  goto L51691;

 L39229: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[2] = x2;
      goto L39230;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39230: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L39231;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39231: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (const_0_to_255_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39232;
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L39232: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15056 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 3698;  /* sse4_2_pcmpistr_cconly */
    }
  x1 = XEXP (x0, 0);
  goto L51691;

 L51692: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == BLKmode)
    goto L63360;
  x1 = XEXP (x0, 0);
  goto L51732;

 L63360: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == UNSPEC)
    goto L63363;
  x1 = XEXP (x0, 0);
  goto L51732;

 L63363: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L63366;
  x1 = XEXP (x0, 0);
  goto L51732;

 L63366: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 194LL:
      goto L51693;
    case 195LL:
      goto L51697;
    case 196LL:
      goto L51701;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L51732;

 L51693: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 51 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_SSE2))
    {
      return 4710;  /* *sse2_lfence */
    }
  x1 = XEXP (x0, 0);
  goto L51732;

 L51697: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 70 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_SSE || TARGET_3DNOW_A))
    {
      return 4711;  /* *sse_sfence */
    }
  x1 = XEXP (x0, 0);
  goto L51732;

 L51701: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 89 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_64BIT || TARGET_SSE2))
    {
      return 4712;  /* mfence_sse2 */
    }
 L51712: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[0])
      && 
#line 100 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!(TARGET_64BIT || TARGET_SSE2))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4713;  /* mfence_nosse */
    }
  x1 = XEXP (x0, 0);
  goto L51732;

 L57154: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L51733;
    }
  goto ret0;

 L51733: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L63369;
  goto ret0;

 L63369: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L63371;
    case UNSPEC_VOLATILE:
      goto L63372;
    default:
     break;
   }
  goto ret0;

 L63371: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 200)
    goto L51734;
  goto ret0;

 L51734: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonmemory_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L51735;
    }
  goto ret0;

 L51735: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      return 4715;  /* atomic_storeqi_1 */
    }
  goto ret0;

 L63372: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 60)
    goto L51996;
  goto ret0;

 L51996: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == QImode)
    goto L63373;
  goto ret0;

 L63373: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L51997;
    case MINUS:
      goto L52051;
    case AND:
      goto L52105;
    case IOR:
      goto L52123;
    case XOR:
      goto L52141;
    default:
     break;
   }
  goto ret0;

 L51997: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L51998;
  goto ret0;

 L51998: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L51999;
    }
  goto ret0;

 L51999: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52000;
    }
  goto ret0;

 L52000: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4734;  /* atomic_addqi */
    }
  goto ret0;

 L52051: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52052;
  goto ret0;

 L52052: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L52053;
    }
  goto ret0;

 L52053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52054;
    }
  goto ret0;

 L52054: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4737;  /* atomic_subqi */
    }
  goto ret0;

 L52105: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52106;
  goto ret0;

 L52106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L52107;
    }
  goto ret0;

 L52107: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52108;
    }
  goto ret0;

 L52108: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4740;  /* atomic_andqi */
    }
  goto ret0;

 L52123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52124;
  goto ret0;

 L52124: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L52125;
    }
  goto ret0;

 L52125: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52126;
    }
  goto ret0;

 L52126: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4741;  /* atomic_orqi */
    }
  goto ret0;

 L52141: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52142;
  goto ret0;

 L52142: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L52143;
    }
  goto ret0;

 L52143: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52144;
    }
  goto ret0;

 L52144: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4742;  /* atomic_xorqi */
    }
  goto ret0;

 L57155: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L51738;
    }
  goto ret0;

 L51738: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L63378;
  goto ret0;

 L63378: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L63380;
    case UNSPEC_VOLATILE:
      goto L63381;
    default:
     break;
   }
  goto ret0;

 L63380: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 200)
    goto L51739;
  goto ret0;

 L51739: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonmemory_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L51740;
    }
  goto ret0;

 L51740: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      return 4716;  /* atomic_storehi_1 */
    }
  goto ret0;

 L63381: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 60)
    goto L52014;
  goto ret0;

 L52014: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == HImode)
    goto L63382;
  goto ret0;

 L63382: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L52015;
    case MINUS:
      goto L52069;
    case AND:
      goto L52159;
    case IOR:
      goto L52177;
    case XOR:
      goto L52195;
    default:
     break;
   }
  goto ret0;

 L52015: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52016;
  goto ret0;

 L52016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L52017;
    }
  goto ret0;

 L52017: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52018;
    }
  goto ret0;

 L52018: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4735;  /* atomic_addhi */
    }
  goto ret0;

 L52069: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52070;
  goto ret0;

 L52070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L52071;
    }
  goto ret0;

 L52071: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52072;
    }
  goto ret0;

 L52072: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4738;  /* atomic_subhi */
    }
  goto ret0;

 L52159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52160;
  goto ret0;

 L52160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L52161;
    }
  goto ret0;

 L52161: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52162;
    }
  goto ret0;

 L52162: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4743;  /* atomic_andhi */
    }
  goto ret0;

 L52177: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52178;
  goto ret0;

 L52178: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L52179;
    }
  goto ret0;

 L52179: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52180;
    }
  goto ret0;

 L52180: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4744;  /* atomic_orhi */
    }
  goto ret0;

 L52195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52196;
  goto ret0;

 L52196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L52197;
    }
  goto ret0;

 L52197: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52198;
    }
  goto ret0;

 L52198: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4745;  /* atomic_xorhi */
    }
  goto ret0;

 L57156: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L51743;
    }
  goto ret0;

 L51743: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L63387;
  goto ret0;

 L63387: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L63389;
    case UNSPEC_VOLATILE:
      goto L63390;
    default:
     break;
   }
  goto ret0;

 L63389: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 200)
    goto L51744;
  goto ret0;

 L51744: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x86_64_nonmemory_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L51745;
    }
  goto ret0;

 L51745: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      return 4717;  /* atomic_storesi_1 */
    }
  goto ret0;

 L63390: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2
      && XINT (x1, 1) == 60)
    goto L52032;
  goto ret0;

 L52032: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_MODE (x2) == SImode)
    goto L63391;
  goto ret0;

 L63391: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L52033;
    case MINUS:
      goto L52087;
    case AND:
      goto L52213;
    case IOR:
      goto L52231;
    case XOR:
      goto L52249;
    default:
     break;
   }
  goto ret0;

 L52033: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52034;
  goto ret0;

 L52034: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52035;
    }
  goto ret0;

 L52035: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52036;
    }
  goto ret0;

 L52036: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4736;  /* atomic_addsi */
    }
  goto ret0;

 L52087: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52088;
  goto ret0;

 L52088: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52089;
    }
  goto ret0;

 L52089: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52090;
    }
  goto ret0;

 L52090: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4739;  /* atomic_subsi */
    }
  goto ret0;

 L52213: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52214;
  goto ret0;

 L52214: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52215;
    }
  goto ret0;

 L52215: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52216;
    }
  goto ret0;

 L52216: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4746;  /* atomic_andsi */
    }
  goto ret0;

 L52231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52232;
  goto ret0;

 L52232: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52233;
    }
  goto ret0;

 L52233: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52234;
    }
  goto ret0;

 L52234: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4747;  /* atomic_orsi */
    }
  goto ret0;

 L52249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L52250;
  goto ret0;

 L52250: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52251;
    }
  goto ret0;

 L52251: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52252;
    }
  goto ret0;

 L52252: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4748;  /* atomic_xorsi */
    }
  goto ret0;

 L57157: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L51766;
    }
  goto ret0;

 L51766: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 197)
    goto L51767;
  goto ret0;

 L51767: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L51768;
    }
  goto ret0;

 L51768: ATTRIBUTE_UNUSED_LABEL
  if (
#line 310 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_80387))
    {
      return 4719;  /* loaddi_via_fpu */
    }
  goto ret0;

 L57158: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L51771;
    }
  goto ret0;

 L51771: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 198)
    goto L51772;
  goto ret0;

 L51772: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L51773;
    }
  goto ret0;

 L51773: ATTRIBUTE_UNUSED_LABEL
  if (
#line 320 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_80387))
    {
      return 4720;  /* storedi_via_fpu */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_122 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case MEM:
      goto L63521;
    case FIX:
      goto L1098;
    case PLUS:
      goto L1446;
    case MINUS:
      goto L2050;
    case AND:
      goto L3494;
    case IOR:
      goto L3757;
    case XOR:
      goto L3771;
    case NEG:
      goto L4524;
    case ASHIFT:
      goto L5015;
    case LSHIFTRT:
      goto L5257;
    case ASHIFTRT:
      goto L5277;
    case ROTATE:
      goto L5808;
    case ROTATERT:
      goto L5828;
    default:
     break;
   }
  goto ret0;

 L63521: ATTRIBUTE_UNUSED_LABEL
  if (pop_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L501;
    }
  goto ret0;

 L501: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L502;
  goto ret0;

 L502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L503;
  goto ret0;

 L503: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 71;  /* *popsi1_epilogue */
    }
  goto ret0;

 L1098: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1099;
    }
  goto ret0;

 L1099: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1100;
  goto ret0;

 L1100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L63522;
    case CCmode:
      goto L63523;
    default:
      break;
    }
  goto ret0;

 L63522: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L1101;
    }
  goto ret0;

 L1101: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4619 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	&& (TARGET_64BIT || SImode != DImode))
	&& TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 161;  /* fix_truncsi_i387_fisttp_with_temp */
    }
  goto ret0;

 L63523: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
   && can_create_pseudo_p ()))
    {
      return 164;  /* *fix_truncsi_i387_1 */
    }
  goto ret0;

 L1446: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L2419;
    }
  goto ret0;

 L2419: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L2420;
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L1448;
    }
  goto ret0;

 L2420: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2421;
    }
  goto ret0;

 L2421: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2422;
  goto ret0;

 L2422: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2423;
  goto ret0;

 L2423: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L2424;
    }
  goto ret0;

 L2424: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2425;
  goto ret0;

 L2425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 259;  /* *addsi3_carry */
    }
  goto ret0;

 L1448: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1449;
  goto ret0;

 L1449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 5257 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 197;  /* *addsi_1 */
    }
  goto ret0;

 L2050: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L2441;
    }
  goto ret0;

 L2441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L2442;
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2052;
    }
  goto ret0;

 L2442: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2443;
    }
  goto ret0;

 L2443: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2444;
  goto ret0;

 L2444: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2445;
  goto ret0;

 L2445: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L2446;
    }
  goto ret0;

 L2446: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2447;
  goto ret0;

 L2447: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 260;  /* *subsi3_carry */
    }
  goto ret0;

 L2052: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2053;
  goto ret0;

 L2053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, SImode, operands)))
    {
      return 236;  /* *subsi_1 */
    }
  goto ret0;

 L3494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L3495;
    }
  goto ret0;

 L3495: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3496;
    }
  goto ret0;

 L3496: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3497;
  goto ret0;

 L3497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7838 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, SImode, operands)))
    {
      return 323;  /* *andsi_1 */
    }
  goto ret0;

 L3757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L63525;
  goto ret0;

 L63525: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ASHIFT:
      goto L4991;
    case LSHIFTRT:
      goto L5366;
    case REG:
    case SUBREG:
    case MEM:
      goto L63524;
    default:
      goto ret0;
   }
 L63524: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L3758;
    }
  goto ret0;

 L4991: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L4992;
  goto ret0;

 L4992: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L4993;
    }
  goto ret0;

 L4993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L4994;
  goto ret0;

 L4994: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L4995;
    }
  goto ret0;

 L4995: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MINUS)
    goto L4996;
  goto ret0;

 L4996: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L4997;
  goto ret0;

 L4997: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L4998;
  goto ret0;

 L4998: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4999;
  goto ret0;

 L4999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 431;  /* x86_shld */
    }
  goto ret0;

 L5366: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L5367;
  goto ret0;

 L5367: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5368;
    }
  goto ret0;

 L5368: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ASHIFT)
    goto L5369;
  goto ret0;

 L5369: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5370;
    }
  goto ret0;

 L5370: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MINUS)
    goto L5371;
  goto ret0;

 L5371: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L5372;
  goto ret0;

 L5372: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L5373;
  goto ret0;

 L5373: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5374;
  goto ret0;

 L5374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 454;  /* x86_shrd */
    }
  goto ret0;

 L3758: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3759;
    }
  goto ret0;

 L3759: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3760;
  goto ret0;

 L3760: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, SImode, operands)))
    {
      return 338;  /* *iorsi_1 */
    }
  goto ret0;

 L3771: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L3772;
    }
  goto ret0;

 L3772: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3773;
    }
  goto ret0;

 L3773: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3774;
  goto ret0;

 L3774: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, SImode, operands)))
    {
      return 339;  /* *xorsi_1 */
    }
  goto ret0;

 L4524: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L4525;
    }
  goto ret0;

 L4525: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4526;
  goto ret0;

 L4526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, SImode, operands)))
    {
      return 386;  /* *negsi2_1 */
    }
  goto ret0;

 L5015: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5016;
    }
  goto ret0;

 L5016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5017;
 L5062: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5063;
    }
  goto ret0;

 L5017: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5018;
  goto L5062;

 L5018: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5019;
    }
  goto L5062;

 L5019: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5020;
    }
  goto L5062;

 L5020: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5021;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5062;

 L5021: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9388 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1))
    {
      return 432;  /* *ashlsi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5062;

 L5063: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5064;
  goto ret0;

 L5064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9411 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, SImode, operands)))
    {
      return 435;  /* *ashlsi3_1 */
    }
  goto ret0;

 L5257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5258;
    }
  goto ret0;

 L5258: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5259;
 L5417: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5418;
    }
  goto ret0;

 L5259: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5260;
  goto L5417;

 L5260: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5261;
    }
  goto L5417;

 L5261: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5262;
    }
  goto L5417;

 L5262: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5263;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5417;

 L5263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1))
    {
      return 448;  /* *lshrsi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5417;

 L5418: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5419;
  goto ret0;

 L5419: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, SImode, operands)))
    {
      return 458;  /* *lshrsi3_1 */
    }
  goto ret0;

 L5277: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5278;
    }
  goto ret0;

 L5278: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5279;
  if (const_int_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5392;
    }
 L5431: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5432;
    }
  goto ret0;

 L5279: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5280;
  goto L5431;

 L5280: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5281;
    }
  goto L5431;

 L5281: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5282;
    }
  goto L5431;

 L5282: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5283;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5431;

 L5283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1))
    {
      return 449;  /* *ashrsi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5431;

 L5392: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5393;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5431;

 L5393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9982 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[2]) == 31
   && (TARGET_USE_CLTD || optimize_function_for_size_p (cfun))
   && ix86_binary_operator_ok (ASHIFTRT, SImode, operands)))
    {
      return 455;  /* ashrsi3_cvt */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5431;

 L5432: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5433;
  goto ret0;

 L5433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, SImode, operands)))
    {
      return 459;  /* *ashrsi3_1 */
    }
  goto ret0;

 L5808: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5809;
    }
  goto ret0;

 L5809: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5810;
 L5927: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5928;
    }
  goto ret0;

 L5810: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5811;
  goto L5927;

 L5811: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5812;
    }
  goto L5927;

 L5812: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5813;
    }
  goto L5927;

 L5813: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5814;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5927;

 L5814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1))
    {
      return 484;  /* *rotlsi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5927;

 L5928: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5929;
  goto ret0;

 L5929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, SImode, operands)))
    {
      return 491;  /* *rotlsi3_1 */
    }
  goto ret0;

 L5828: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L5829;
    }
  goto ret0;

 L5829: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5830;
 L5941: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5942;
    }
  goto ret0;

 L5830: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5831;
  goto L5941;

 L5831: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5832;
    }
  goto L5941;

 L5832: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5833;
    }
  goto L5941;

 L5833: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5834;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5941;

 L5834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, SImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1))
    {
      return 485;  /* *rotrsi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5941;

 L5942: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5943;
  goto ret0;

 L5943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, SImode, operands)))
    {
      return 492;  /* *rotrsi3_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_123 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case MEM:
      goto L63497;
    case ZERO_EXTRACT:
      goto L1754;
    default:
     break;
   }
 L63406: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L500;
    }
 L63408: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L623;
    }
 L63417: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1043;
    }
  goto ret0;

 L63497: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L478;
    }
  goto L63406;

 L478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_no_elim_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L479;
    }
  x2 = XEXP (x1, 0);
  goto L63406;

 L479: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L480;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63406;

 L480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L481;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63406;

 L481: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 67;  /* *pushsi2_prologue */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63406;

 L1754: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L1755;
    }
  goto ret0;

 L1755: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1756;
  goto ret0;

 L1756: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1757;
  goto ret0;

 L1757: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L63498;
  goto ret0;

 L63498: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L1758;
    case AND:
      goto L3653;
    case IOR:
      goto L4287;
    case XOR:
      goto L4313;
    default:
     break;
   }
  goto ret0;

 L1758: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L1759;
  goto ret0;

 L1759: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L1760;
    }
  goto ret0;

 L1760: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1761;
  goto ret0;

 L1761: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1788;
  goto ret0;

 L1788: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L1789;
  if (general_x64nomem_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L1763;
    }
  goto ret0;

 L1789: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L1790;
    }
  goto ret0;

 L1790: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1791;
  goto ret0;

 L1791: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L1792;
  goto ret0;

 L1792: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1793;
  goto ret0;

 L1793: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 218;  /* *addqi_ext_2 */
    }
  goto ret0;

 L1763: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1764;
  goto ret0;

 L1764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 217;  /* addqi_ext_1 */
    }
  goto ret0;

 L3653: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L3654;
  goto ret0;

 L3654: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L3655;
    }
  goto ret0;

 L3655: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3656;
  goto ret0;

 L3656: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3705;
  goto ret0;

 L3705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode)
    goto L63502;
 L3657: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L3658;
    }
  goto ret0;

 L63502: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L3706;
    case ZERO_EXTRACT:
      goto L3734;
    default:
     break;
   }
  goto L3657;

 L3706: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_x64nomem_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L3707;
    }
  goto L3657;

 L3707: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3708;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L3657;

 L3708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 336;  /* *andqi_ext_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L3657;

 L3734: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L3735;
    }
  goto L3657;

 L3735: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3736;
  goto L3657;

 L3736: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3737;
  goto L3657;

 L3737: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3738;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L3657;

 L3738: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 337;  /* *andqi_ext_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L3657;

 L3658: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3659;
  goto ret0;

 L3659: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 334;  /* andqi_ext_0 */
    }
  goto ret0;

 L4287: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L4288;
  goto ret0;

 L4288: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L4289;
    }
  goto ret0;

 L4289: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4290;
  goto ret0;

 L4290: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4343;
  goto ret0;

 L4343: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode)
    goto L63504;
 L4291: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L4292;
    }
  goto ret0;

 L63504: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L4344;
    case ZERO_EXTRACT:
      goto L4400;
    default:
     break;
   }
  goto L4291;

 L4344: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_x64nomem_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L4345;
    }
  goto L4291;

 L4345: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4346;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4291;

 L4346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8615 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 377;  /* *iorqi_ext_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4291;

 L4400: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L4401;
    }
  goto L4291;

 L4401: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4402;
  goto L4291;

 L4402: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4403;
  goto L4291;

 L4403: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4404;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4291;

 L4404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8634 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 379;  /* *iorqi_ext_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4291;

 L4292: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4293;
  goto ret0;

 L4293: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8596 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 375;  /* *iorqi_ext_0 */
    }
  goto ret0;

 L4313: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L4314;
  goto ret0;

 L4314: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L4315;
    }
  goto ret0;

 L4315: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4316;
  goto ret0;

 L4316: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4371;
  goto ret0;

 L4371: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode)
    goto L63506;
 L4317: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L4318;
    }
  goto ret0;

 L63506: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L4372;
    case ZERO_EXTRACT:
      goto L4431;
    default:
     break;
   }
  goto L4317;

 L4372: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_x64nomem_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L4373;
    }
  goto L4317;

 L4373: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4374;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4317;

 L4374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8615 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 378;  /* *xorqi_ext_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4317;

 L4431: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L4432;
    }
  goto L4317;

 L4432: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4433;
  goto L4317;

 L4433: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4434;
  goto L4317;

 L4434: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4435;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4317;

 L4435: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8634 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 380;  /* *xorqi_ext_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L4317;

 L4318: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4319;
  goto ret0;

 L4319: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8596 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 376;  /* *xorqi_ext_0 */
    }
  goto ret0;

 L500: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L63508;
  x2 = XEXP (x1, 0);
  goto L63408;

 L63508: ATTRIBUTE_UNUSED_LABEL
  tem = recog_122 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L63408;

 L623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L63528;
 L530: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L531;
    }
 L540: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L541;
    }
  x2 = XEXP (x1, 0);
  goto L63417;

 L63528: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L792;
    case UNSIGNED_FIX:
      goto L978;
    case MULT:
      goto L2654;
    case DIV:
      goto L3043;
    case UDIV:
      goto L3214;
    case NOT:
      goto L4037;
    case REG:
    case SUBREG:
      goto L63527;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case GEU:
    case GTU:
    case LEU:
    case LTU:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L63534;
    default:
      goto L530;
   }
 L63527: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L624;
    }
 L63534: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x2, SImode))
    {
      operands[1] = x2;
      goto L6086;
    }
  goto L530;

 L792: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L63535;
    case HImode:
      goto L63536;
    default:
      break;
    }
  goto L530;

 L63535: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L793;
    }
  goto L530;

 L793: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L794;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L794: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 3635 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    {
      return 123;  /* zero_extendqisi2_and */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L63536: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L805;
    }
  goto L530;

 L805: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L806;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 3635 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    {
      return 124;  /* zero_extendhisi2_and */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63537;
    case DFmode:
      goto L63538;
    default:
      break;
    }
  goto L530;

 L63537: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L979;
    }
  goto L530;

 L979: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L980;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L981;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L981: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 150;  /* *fixuns_truncsf_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L63538: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L999;
    }
  goto L530;

 L999: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1000;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L1000: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L1001;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L1001: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   && optimize_function_for_speed_p (cfun))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 2;
      return 151;  /* *fixuns_truncdf_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L63539;
  goto L530;

 L63539: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L2655;
    }
 L63540: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2841;
    }
  goto L530;

 L2655: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2656;
    }
  x3 = XEXP (x2, 0);
  goto L63540;

 L2656: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2657;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L63540;

 L2657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6498 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 272;  /* *mulsi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L63540;

 L2841: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L2842;
    }
  goto L530;

 L2842: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2843;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2843: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L2844;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2844: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == TRUNCATE)
    goto L2845;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L2846;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2846: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == MULT)
    goto L2847;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2847: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == DImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L2848;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2848: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[2]))
    goto L2849;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2849: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == DImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L2850;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2850: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[3]))
    goto L2851;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L2851: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)]
      && 
#line 6850 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_BMI2
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 282;  /* *bmi2_umulsidi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3043: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3044;
    }
  goto L530;

 L3044: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L3045;
    }
  goto L530;

 L3045: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3046;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3047;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MOD)
    goto L3048;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3048: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3049;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3049: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3])
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 291;  /* *divmodsi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3214: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3215;
    }
  goto L530;

 L3215: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L3216;
    }
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L3240;
    }
  goto L530;

 L3216: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3217;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3218;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L3219;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3219: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3220;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3220: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3])
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 297;  /* *udivmodsi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3240: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3241;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3241: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3242;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L3243;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3243: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3244;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L3244: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 7343 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(IN_RANGE (INTVAL (operands[3]), 2, HOST_WIDE_INT_UC (0x80000000))
   && (UINTVAL (operands[3]) & (UINTVAL (operands[3]) - 1)) == 0)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 298;  /* *udivmodsi4_pow2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L4037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == XOR)
    goto L4038;
  goto L530;

 L4038: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L4039;
    }
  goto L530;

 L4039: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L4040;
    }
  goto L530;

 L4040: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4041;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L4041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8443 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW))
    {
      return 358;  /* kxnorsi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L624: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L625;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L625: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L626;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    {
      return 95;  /* *swapsi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L6086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L6087;
  goto L530;

 L6087: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6088;
  goto L530;

 L6088: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6089;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L6089: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10855 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL
   && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    {
      return 503;  /* *setcc_si_1_and */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L530;

 L531: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L532;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L540;

 L532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 1944 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 77;  /* *movsi_xor */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L540;

 L541: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L542;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63417;

 L542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 1954 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && operands[1] == constm1_rtx))
    {
      return 78;  /* *movsi_or */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63417;

 L1043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == FIX)
    goto L1044;
  goto ret0;

 L1044: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1045;
    }
  goto ret0;

 L1045: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1046;
  goto ret0;

 L1046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L1047;
    }
  goto ret0;

 L1047: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4605 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
	&& TARGET_SSE_MATH)))
    {
      return 158;  /* fix_truncsi_i387_fisttp */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_124 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (push_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L485;
    }
 L63407: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L507;
    }
 L63418: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1056;
    }
 L63426: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2855;
    }
 L63431: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5034;
    }
 L63432: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5336;
    }
 L63433: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5443;
    }
  goto ret0;

 L485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (general_no_elim_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L486;
    }
  x2 = XEXP (x1, 0);
  goto L63407;

 L486: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L487;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63407;

 L487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L488;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63407;

 L488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 68;  /* *pushdi2_prologue */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63407;

 L507: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63541;
  x2 = XEXP (x1, 0);
  goto L63418;

 L63541: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case MEM:
      goto L63548;
    case FIX:
      goto L1116;
    case PLUS:
      goto L1385;
    case MINUS:
      goto L1994;
    case IOR:
      goto L3785;
    case XOR:
      goto L3799;
    case NEG:
      goto L4476;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63418;

 L63548: ATTRIBUTE_UNUSED_LABEL
  if (pop_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L508;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L508: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L509;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L510;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 72;  /* *popdi1_epilogue */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1116: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1117;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L1117: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1118;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L63549;
    case CCmode:
      goto L63550;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63549: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1119;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1119: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4619 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	&& (TARGET_64BIT || DImode != DImode))
	&& TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 162;  /* fix_truncdi_i387_fisttp_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63550: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
   && can_create_pseudo_p ()))
    {
      return 165;  /* *fix_truncdi_i387_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1385: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L2463;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2463: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == PLUS)
    goto L2464;
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L1387;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2464: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2465;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2465: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2466;
  x2 = XEXP (x1, 0);
  goto L63418;

 L2466: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2467;
  x2 = XEXP (x1, 0);
  goto L63418;

 L2467: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L2468;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2468: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2469;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L2469: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 261;  /* *adddi3_carry */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1387: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1388;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63551;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63551: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63553;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63553: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63555;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63555: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5208 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return 192;  /* *adddi3_doubleword */
    }
 L63556: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5257 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 198;  /* *adddi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1994: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L2485;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2485: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == PLUS)
    goto L2486;
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L1996;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2486: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2487;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2487: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2488;
  x2 = XEXP (x1, 0);
  goto L63418;

 L2488: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2489;
  x2 = XEXP (x1, 0);
  goto L63418;

 L2489: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L2490;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L2490: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2491;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L2491: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 262;  /* *subdi3_carry */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1996: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1997;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63557;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63557: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63559;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63559: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63561;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63561: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6149 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, SImode, operands)) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return 232;  /* *subdi3_doubleword */
    }
 L63562: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 237;  /* *subdi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L3785: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L3786;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L3786: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L3787;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L3787: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3788;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L3788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 340;  /* *iordi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L3799: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L3800;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L3800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L3801;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L3801: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3802;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L3802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 8334 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 341;  /* *xordi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L4476: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4477;
    }
  x2 = XEXP (x1, 0);
  goto L63418;

 L4477: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4478;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L4478: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63563;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63563: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63565;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63565: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63567;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L63567: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8743 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, DImode, operands)) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return 382;  /* *negdi2_doubleword */
    }
 L63568: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 387;  /* *negdi2_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63418;

 L1056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == FIX)
    goto L1057;
  x2 = XEXP (x1, 0);
  goto L63426;

 L1057: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1058;
    }
  x2 = XEXP (x1, 0);
  goto L63426;

 L1058: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1059;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63426;

 L1059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L1060;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63426;

 L1060: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4605 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
	&& TARGET_SSE_MATH)))
    {
      return 159;  /* fix_truncdi_i387_fisttp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63426;

 L2855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63569;
  x2 = XEXP (x1, 0);
  goto L63431;

 L63569: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case MULT:
      goto L2856;
    case NOT:
      goto L4053;
    case ASHIFT:
      goto L4976;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63431;

 L2856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L63572;
  x2 = XEXP (x1, 0);
  goto L63431;

 L63572: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case ZERO_EXTEND:
      goto L2857;
    case SIGN_EXTEND:
      goto L2875;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63431;

 L2857: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L2858;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L2858: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L2859;
  x2 = XEXP (x1, 0);
  goto L63431;

 L2859: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L2860;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L2860: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2861;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L2861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6865 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return 283;  /* *umulsidi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L2875: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L2876;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L2876: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2877;
  x2 = XEXP (x1, 0);
  goto L63431;

 L2877: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L2878;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L2878: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2879;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L2879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6916 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return 284;  /* *mulsidi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L4053: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == XOR)
    goto L4054;
  x2 = XEXP (x1, 0);
  goto L63431;

 L4054: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L4055;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L4055: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L4056;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L4056: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4057;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L4057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8443 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512BW))
    {
      return 359;  /* kxnordi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L4976: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (reg_or_pm1_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4977;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L4977: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4978;
    }
  x2 = XEXP (x1, 0);
  goto L63431;

 L4978: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4979;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L4979: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 430;  /* *ashldi3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63431;

 L5034: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63574;
  x2 = XEXP (x1, 0);
  goto L63432;

 L63574: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFT:
      goto L5035;
    case LSHIFTRT:
      goto L5297;
    case ASHIFTRT:
      goto L5317;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5035: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5036;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5037;
 L5076: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5077;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5037: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5038;
  goto L5076;

 L5038: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5039;
    }
  goto L5076;

 L5039: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5040;
    }
  goto L5076;

 L5040: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5041;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5076;

 L5041: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9388 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 433;  /* *ashldi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5076;

 L5077: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5078;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63432;

 L5078: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9411 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 436;  /* *ashldi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63432;

 L5297: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5298;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5298: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5299;
  x2 = XEXP (x1, 0);
  goto L63432;

 L5299: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5300;
  x2 = XEXP (x1, 0);
  goto L63432;

 L5300: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5301;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5301: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5302;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5302: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5303;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63432;

 L5303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 450;  /* *lshrdi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63432;

 L5317: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5318;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5318: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5319;
  x2 = XEXP (x1, 0);
  goto L63432;

 L5319: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5320;
  x2 = XEXP (x1, 0);
  goto L63432;

 L5320: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5321;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5321: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5322;
    }
  x2 = XEXP (x1, 0);
  goto L63432;

 L5322: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5323;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63432;

 L5323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9890 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 451;  /* *ashrdi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63432;

 L5336: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63577;
  x2 = XEXP (x1, 0);
  goto L63433;

 L63577: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case LSHIFTRT:
      goto L5337;
    case ASHIFTRT:
      goto L5351;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63433;

 L5337: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5338;
    }
  x2 = XEXP (x1, 0);
  goto L63433;

 L5338: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5339;
    }
  x2 = XEXP (x1, 0);
  goto L63433;

 L5339: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5340;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63433;

 L5340: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 452;  /* *lshrdi3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63433;

 L5351: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5352;
    }
  x2 = XEXP (x1, 0);
  goto L63433;

 L5352: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5353;
    }
  x2 = XEXP (x1, 0);
  goto L63433;

 L5353: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5354;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63433;

 L5354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 453;  /* *ashrdi3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63433;

 L5443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63579;
  goto ret0;

 L63579: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case LSHIFTRT:
      goto L5444;
    case ASHIFTRT:
      goto L5458;
    case ROTATE:
      goto L5848;
    case ROTATERT:
      goto L5868;
    default:
     break;
   }
  goto ret0;

 L5444: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5445;
    }
  goto ret0;

 L5445: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5446;
    }
  goto ret0;

 L5446: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5447;
  goto ret0;

 L5447: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 460;  /* *lshrdi3_1 */
    }
  goto ret0;

 L5458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5459;
    }
  goto ret0;

 L5459: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5460;
    }
  goto ret0;

 L5460: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5461;
  goto ret0;

 L5461: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10056 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 461;  /* *ashrdi3_1 */
    }
  goto ret0;

 L5848: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5849;
    }
  goto ret0;

 L5849: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5850;
 L5955: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5956;
    }
  goto ret0;

 L5850: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5851;
  goto L5955;

 L5851: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5852;
    }
  goto L5955;

 L5852: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5853;
    }
  goto L5955;

 L5853: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5854;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5955;

 L5854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 486;  /* *rotldi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5955;

 L5956: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5957;
  goto ret0;

 L5957: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 493;  /* *rotldi3_1 */
    }
  goto ret0;

 L5868: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5869;
    }
  goto ret0;

 L5869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == SUBREG
      && XINT (x3, 1) == 0)
    goto L5870;
 L5969: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5970;
    }
  goto ret0;

 L5870: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == AND)
    goto L5871;
  goto L5969;

 L5871: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L5872;
    }
  goto L5969;

 L5872: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (const_int_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L5873;
    }
  goto L5969;

 L5873: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5874;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5969;

 L5874: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, DImode, operands)
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 487;  /* *rotrdi3_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L5969;

 L5970: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5971;
  goto ret0;

 L5971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10428 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 494;  /* *rotrdi3_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_125 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L637;
    }
 L63416: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1030;
    }
 L63419: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1079;
    }
  goto ret0;

 L637: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L63599;
  x2 = XEXP (x1, 0);
  goto L63416;

 L63599: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L826;
    case MULT:
      goto L2668;
    case DIV:
      goto L3019;
    case IOR:
      goto L3112;
    case UDIV:
      goto L3190;
    case AND:
      goto L3568;
    case NOT:
      goto L4021;
    case REG:
    case SUBREG:
      goto L63598;
    default:
      x2 = XEXP (x1, 0);
      goto L63416;
   }
 L63598: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L638;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L826: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L827;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L827: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L828;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L828: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 3682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    {
      return 127;  /* zero_extendqihi2_and */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L2668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode)
    goto L63607;
  x2 = XEXP (x1, 0);
  goto L63416;

 L63607: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case SIGN_EXTEND:
      goto L2893;
    case ZERO_EXTEND:
      goto L2911;
    case REG:
    case SUBREG:
    case MEM:
      goto L63606;
    default:
      x2 = XEXP (x1, 0);
      goto L63416;
   }
 L63606: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L2669;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L2893: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L2894;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L2894: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2895;
  x2 = XEXP (x1, 0);
  goto L63416;

 L2895: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L2896;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L2896: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2897;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L2897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 285;  /* *mulqihi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L2911: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L2912;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L2912: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L2913;
  x2 = XEXP (x1, 0);
  goto L63416;

 L2913: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L2914;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L2914: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2915;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L2915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 286;  /* *umulqihi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L2669: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L2670;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L2670: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2671;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L2671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6568 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 273;  /* *mulhi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3019: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3020;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3020: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L3021;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3021: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3022;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3022: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3023;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MOD)
    goto L3024;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3024: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3025;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3025: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 290;  /* *divmodhi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3112: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == ASHIFT)
    goto L3113;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3113: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L3114;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3114: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == QImode
      && GET_CODE (x5) == TRUNCATE)
    goto L3115;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3115: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == MOD)
    goto L3116;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3116: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (register_operand (x7, HImode))
    {
      operands[1] = x7;
      goto L3117;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3117: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 1);
  if (GET_MODE (x7) == HImode)
    goto L63609;
  x2 = XEXP (x1, 0);
  goto L63416;

 L63609: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x7))
    {
    case SIGN_EXTEND:
      goto L3118;
    case ZERO_EXTEND:
      goto L3313;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3118: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, QImode))
    {
      operands[2] = x8;
      goto L3119;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3119: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3120;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3120: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L3121;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3121: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == TRUNCATE)
    goto L3122;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3122: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == DIV)
    goto L3123;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3123: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L3124;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3124: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == SIGN_EXTEND)
    goto L3125;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3125: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L3126;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3126: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3127;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3127: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7258 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH))
    {
      return 294;  /* divmodhiqi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3313: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (nonimmediate_operand (x8, QImode))
    {
      operands[2] = x8;
      goto L3314;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3314: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3315;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3315: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L3316;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3316: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == TRUNCATE)
    goto L3317;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3317: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == HImode
      && GET_CODE (x5) == DIV)
    goto L3318;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3318: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (rtx_equal_p (x6, operands[1]))
    goto L3319;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3319: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == HImode
      && GET_CODE (x6) == ZERO_EXTEND)
    goto L3320;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3320: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (rtx_equal_p (x7, operands[2]))
    goto L3321;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3321: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3322;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7425 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH))
    {
      return 301;  /* udivmodhiqi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3190: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3191;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3191: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L3192;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3192: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3193;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3194;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3194: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UMOD)
    goto L3195;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3196;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 296;  /* *udivmodhi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3568: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == NOT)
    goto L3569;
  x2 = XEXP (x1, 0);
  goto L63416;

 L3569: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L3570;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3570: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3571;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L3571: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3572;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L3572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 328;  /* kandnhi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L4021: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == XOR)
    goto L4022;
  x2 = XEXP (x1, 0);
  goto L63416;

 L4022: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L4023;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L4023: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L4024;
    }
  x2 = XEXP (x1, 0);
  goto L63416;

 L4024: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4025;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L4025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8426 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 357;  /* kxnorhi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L638: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L639;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L639: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L640;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L640: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 2630 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 97;  /* *swaphi_1 */
    }
 L654: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[0])
      && 
#line 2646 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_PARTIAL_REG_STALL))
    {
      return 99;  /* *swaphi_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63416;

 L1030: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == FIX)
    goto L1031;
  x2 = XEXP (x1, 0);
  goto L63419;

 L1031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1032;
    }
  x2 = XEXP (x1, 0);
  goto L63419;

 L1032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1033;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63419;

 L1033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L1034;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63419;

 L1034: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4605 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
	&& TARGET_SSE_MATH)))
    {
      return 157;  /* fix_trunchi_i387_fisttp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63419;

 L1079: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L63611;
  goto ret0;

 L63611: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L1080;
    case PLUS:
      goto L1474;
    case MINUS:
      goto L2036;
    case AND:
      goto L3508;
    case IOR:
      goto L3813;
    case XOR:
      goto L3827;
    case NEG:
      goto L4512;
    case ASHIFT:
      goto L5089;
    case LSHIFTRT:
      goto L5500;
    case ASHIFTRT:
      goto L5514;
    case ROTATE:
      goto L6010;
    case ROTATERT:
      goto L6024;
    default:
     break;
   }
  goto ret0;

 L1080: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1081;
    }
  goto ret0;

 L1081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1082;
  goto ret0;

 L1082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case HImode:
      goto L63623;
    case CCmode:
      goto L63624;
    default:
      break;
    }
  goto ret0;

 L63623: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1083;
    }
  goto ret0;

 L1083: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4619 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	&& (TARGET_64BIT || HImode != DImode))
	&& TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 160;  /* fix_trunchi_i387_fisttp_with_temp */
    }
  goto ret0;

 L63624: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
   && can_create_pseudo_p ()))
    {
      return 163;  /* *fix_trunchi_i387_1 */
    }
  goto ret0;

 L1474: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L2375;
    }
  goto ret0;

 L2375: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == PLUS)
    goto L2376;
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L1476;
    }
  goto ret0;

 L2376: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2377;
    }
  goto ret0;

 L2377: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2378;
  goto ret0;

 L2378: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2379;
  goto ret0;

 L2379: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L2380;
    }
  goto ret0;

 L2380: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2381;
  goto ret0;

 L2381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands)))
    {
      return 257;  /* *addhi3_carry */
    }
  goto ret0;

 L1476: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1477;
  goto ret0;

 L1477: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 5360 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands)))
    {
      return 199;  /* *addhi_1 */
    }
  goto ret0;

 L2036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L2397;
    }
  goto ret0;

 L2397: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == PLUS)
    goto L2398;
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L2038;
    }
  goto ret0;

 L2398: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2399;
    }
  goto ret0;

 L2399: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2400;
  goto ret0;

 L2400: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2401;
  goto ret0;

 L2401: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L2402;
    }
  goto ret0;

 L2402: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2403;
  goto ret0;

 L2403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands)))
    {
      return 258;  /* *subhi3_carry */
    }
  goto ret0;

 L2038: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2039;
  goto ret0;

 L2039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, HImode, operands)))
    {
      return 235;  /* *subhi_1 */
    }
  goto ret0;

 L3508: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L3509;
    }
  goto ret0;

 L3509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3510;
    }
  goto ret0;

 L3510: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3511;
  goto ret0;

 L3511: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7881 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, HImode, operands)))
    {
      return 324;  /* *andhi_1 */
    }
  goto ret0;

 L3813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L3814;
    }
  goto ret0;

 L3814: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3815;
    }
  goto ret0;

 L3815: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3816;
  goto ret0;

 L3816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8348 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, HImode, operands)))
    {
      return 342;  /* *iorhi_1 */
    }
  goto ret0;

 L3827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L3828;
    }
  goto ret0;

 L3828: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3829;
    }
  goto ret0;

 L3829: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3830;
  goto ret0;

 L3830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8348 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, HImode, operands)))
    {
      return 343;  /* *xorhi_1 */
    }
  goto ret0;

 L4512: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4513;
    }
  goto ret0;

 L4513: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4514;
  goto ret0;

 L4514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, HImode, operands)))
    {
      return 385;  /* *neghi2_1 */
    }
  goto ret0;

 L5089: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L5090;
    }
  goto ret0;

 L5090: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5091;
    }
  goto ret0;

 L5091: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5092;
  goto ret0;

 L5092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, HImode, operands)))
    {
      return 437;  /* *ashlhi3_1 */
    }
  goto ret0;

 L5500: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L5501;
    }
  goto ret0;

 L5501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5502;
    }
  goto ret0;

 L5502: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5503;
  goto ret0;

 L5503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, HImode, operands)))
    {
      return 464;  /* *lshrhi3_1 */
    }
  goto ret0;

 L5514: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L5515;
    }
  goto ret0;

 L5515: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5516;
    }
  goto ret0;

 L5516: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5517;
  goto ret0;

 L5517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, HImode, operands)))
    {
      return 465;  /* *ashrhi3_1 */
    }
  goto ret0;

 L6010: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L6011;
    }
  goto ret0;

 L6011: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L6012;
    }
  goto ret0;

 L6012: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6013;
  goto ret0;

 L6013: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, HImode, operands)))
    {
      return 497;  /* *rotlhi3_1 */
    }
  goto ret0;

 L6024: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L6025;
    }
  goto ret0;

 L6025: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L6026;
    }
  goto ret0;

 L6026: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6027;
  goto ret0;

 L6027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, HImode, operands)))
    {
      return 498;  /* *rotrhi3_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_126 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L63645;
    case SImode:
      goto L63646;
    case DImode:
      goto L63647;
    case TImode:
      goto L63648;
    default:
      break;
    }
  goto ret0;

 L63645: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1813;
    case MINUS:
      goto L2147;
    case MULT:
      goto L2715;
    default:
     break;
   }
  goto ret0;

 L1813: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1814;
  goto ret0;

 L1814: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, QImode))
    {
      operands[1] = x5;
      goto L1815;
    }
  goto ret0;

 L1815: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1816;
  if (const_int_operand (x4, HImode))
    {
      operands[3] = x4;
      goto L1888;
    }
  goto ret0;

 L1816: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (sext_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L1817;
    }
  goto ret0;

 L1817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1818;
  goto ret0;

 L1818: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == PLUS)
    goto L1819;
  goto ret0;

 L1819: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1820;
  goto ret0;

 L1820: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L1821;
  goto ret0;

 L1821: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1822;
  goto ret0;

 L1822: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1823;
    }
  goto ret0;

 L1823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L1824;
  goto ret0;

 L1824: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1825;
  goto ret0;

 L1825: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5962 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 219;  /* *addvqi4 */
    }
  goto ret0;

 L1888: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1889;
  goto ret0;

 L1889: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == PLUS)
    goto L1890;
  goto ret0;

 L1890: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1891;
  goto ret0;

 L1891: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L1892;
    }
  goto ret0;

 L1892: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1893;
  goto ret0;

 L1893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1894;
    }
  goto ret0;

 L1894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L1895;
  goto ret0;

 L1895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1896;
  goto ret0;

 L1896: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5979 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 223;  /* *addvqi4_1 */
    }
  goto ret0;

 L2147: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2148;
  goto ret0;

 L2148: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, QImode))
    {
      operands[1] = x5;
      goto L2149;
    }
  goto ret0;

 L2149: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2150;
  if (const_int_operand (x4, HImode))
    {
      operands[3] = x4;
      goto L2222;
    }
  goto ret0;

 L2150: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (sext_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L2151;
    }
  goto ret0;

 L2151: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2152;
  goto ret0;

 L2152: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MINUS)
    goto L2153;
  goto ret0;

 L2153: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2154;
  goto ret0;

 L2154: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2155;
  goto ret0;

 L2155: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2156;
  goto ret0;

 L2156: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2157;
    }
  goto ret0;

 L2157: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MINUS)
    goto L2158;
  goto ret0;

 L2158: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2159;
  goto ret0;

 L2159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, QImode, operands)))
    {
      return 243;  /* *subvqi4 */
    }
  goto ret0;

 L2222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2223;
  goto ret0;

 L2223: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MINUS)
    goto L2224;
  goto ret0;

 L2224: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2225;
  goto ret0;

 L2225: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L2226;
    }
  goto ret0;

 L2226: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2227;
  goto ret0;

 L2227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2228;
    }
  goto ret0;

 L2228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MINUS)
    goto L2229;
  goto ret0;

 L2229: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2230;
  goto ret0;

 L2230: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6284 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, QImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 247;  /* *subvqi4_1 */
    }
  goto ret0;

 L2715: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode)
    goto L63656;
  goto ret0;

 L63656: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L2716;
    case ZERO_EXTEND:
      goto L2824;
    default:
     break;
   }
  goto ret0;

 L2716: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case SImode:
      goto L63658;
    case QImode:
      goto L63659;
    default:
      break;
    }
  goto ret0;

 L63658: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2717;
    }
  goto ret0;

 L2717: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, HImode))
    {
      operands[3] = x4;
      goto L2718;
    }
  goto ret0;

 L2718: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2719;
  goto ret0;

 L2719: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MULT)
    goto L2720;
  goto ret0;

 L2720: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2721;
  goto ret0;

 L2721: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L2722;
    }
  goto ret0;

 L2722: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2723;
  goto ret0;

 L2723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2724;
    }
  goto ret0;

 L2724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L2725;
  goto ret0;

 L2725: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2726;
  goto ret0;

 L2726: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6683 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 276;  /* *mulvqi4_1 */
    }
  goto ret0;

 L63659: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, QImode))
    {
      operands[1] = x5;
      goto L2807;
    }
  goto ret0;

 L2807: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2808;
  goto ret0;

 L2808: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L2809;
    }
  goto ret0;

 L2809: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2810;
  goto ret0;

 L2810: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MULT)
    goto L2811;
  goto ret0;

 L2811: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2812;
  goto ret0;

 L2812: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2813;
  goto ret0;

 L2813: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2814;
  goto ret0;

 L2814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2815;
    }
  goto ret0;

 L2815: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MULT)
    goto L2816;
  goto ret0;

 L2816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2817;
  goto ret0;

 L2817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6789 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 280;  /* *mulvqi4 */
    }
  goto ret0;

 L2824: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, QImode))
    {
      operands[1] = x5;
      goto L2825;
    }
  goto ret0;

 L2825: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L2826;
  goto ret0;

 L2826: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L2827;
    }
  goto ret0;

 L2827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L2828;
  goto ret0;

 L2828: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MULT)
    goto L2829;
  goto ret0;

 L2829: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2830;
  goto ret0;

 L2830: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2831;
  goto ret0;

 L2831: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2832;
  goto ret0;

 L2832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2833;
    }
  goto ret0;

 L2833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MULT)
    goto L2834;
  goto ret0;

 L2834: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2835;
  goto ret0;

 L2835: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6789 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 281;  /* *umulvqi4 */
    }
  goto ret0;

 L63646: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1831;
    case MINUS:
      goto L2165;
    case MULT:
      goto L2732;
    default:
     break;
   }
  goto ret0;

 L1831: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1832;
  goto ret0;

 L1832: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, HImode))
    {
      operands[1] = x5;
      goto L1833;
    }
  goto ret0;

 L1833: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1834;
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L1905;
    }
  goto ret0;

 L1834: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (sext_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L1835;
    }
  goto ret0;

 L1835: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1836;
  goto ret0;

 L1836: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L1837;
  goto ret0;

 L1837: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1838;
  goto ret0;

 L1838: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L1839;
  goto ret0;

 L1839: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1840;
  goto ret0;

 L1840: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1841;
    }
  goto ret0;

 L1841: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L1842;
  goto ret0;

 L1842: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1843;
  goto ret0;

 L1843: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5962 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands)))
    {
      return 220;  /* *addvhi4 */
    }
  goto ret0;

 L1905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1906;
  goto ret0;

 L1906: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == PLUS)
    goto L1907;
  goto ret0;

 L1907: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1908;
  goto ret0;

 L1908: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L1909;
    }
  goto ret0;

 L1909: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1910;
  goto ret0;

 L1910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1911;
    }
  goto ret0;

 L1911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L1912;
  goto ret0;

 L1912: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1913;
  goto ret0;

 L1913: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5979 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 224;  /* *addvhi4_1 */
    }
  goto ret0;

 L2165: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2166;
  goto ret0;

 L2166: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, HImode))
    {
      operands[1] = x5;
      goto L2167;
    }
  goto ret0;

 L2167: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2168;
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L2239;
    }
  goto ret0;

 L2168: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (sext_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L2169;
    }
  goto ret0;

 L2169: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2170;
  goto ret0;

 L2170: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L2171;
  goto ret0;

 L2171: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2172;
  goto ret0;

 L2172: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2173;
  goto ret0;

 L2173: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2174;
  goto ret0;

 L2174: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L2175;
    }
  goto ret0;

 L2175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MINUS)
    goto L2176;
  goto ret0;

 L2176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2177;
  goto ret0;

 L2177: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, HImode, operands)))
    {
      return 244;  /* *subvhi4 */
    }
  goto ret0;

 L2239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2240;
  goto ret0;

 L2240: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode
      && GET_CODE (x4) == MINUS)
    goto L2241;
  goto ret0;

 L2241: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2242;
  goto ret0;

 L2242: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L2243;
    }
  goto ret0;

 L2243: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2244;
  goto ret0;

 L2244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L2245;
    }
  goto ret0;

 L2245: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MINUS)
    goto L2246;
  goto ret0;

 L2246: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2247;
  goto ret0;

 L2247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6284 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, HImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 248;  /* *subvhi4_1 */
    }
  goto ret0;

 L2732: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2733;
  goto ret0;

 L2733: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2734;
    }
  goto ret0;

 L2734: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L2735;
    }
  goto ret0;

 L2735: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2736;
  goto ret0;

 L2736: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MULT)
    goto L2737;
  goto ret0;

 L2737: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2738;
  goto ret0;

 L2738: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L2739;
    }
  goto ret0;

 L2739: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2740;
  goto ret0;

 L2740: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2741;
    }
  goto ret0;

 L2741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L2742;
  goto ret0;

 L2742: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2743;
  goto ret0;

 L2743: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6683 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 277;  /* *mulvhi4_1 */
    }
  goto ret0;

 L63647: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1849;
    case MINUS:
      goto L2183;
    case MULT:
      goto L2697;
    default:
     break;
   }
  goto ret0;

 L1849: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1850;
  goto ret0;

 L1850: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L1851;
    }
  goto ret0;

 L1851: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1852;
  if (const_int_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L1922;
    }
  goto ret0;

 L1852: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x86_64_sext_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L1853;
    }
  goto ret0;

 L1853: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1854;
  goto ret0;

 L1854: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L1855;
  goto ret0;

 L1855: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1856;
  goto ret0;

 L1856: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L1857;
  goto ret0;

 L1857: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1858;
  goto ret0;

 L1858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1859;
    }
  goto ret0;

 L1859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L1860;
  goto ret0;

 L1860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1861;
  goto ret0;

 L1861: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5962 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 221;  /* *addvsi4 */
    }
  goto ret0;

 L1922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1923;
  goto ret0;

 L1923: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L1924;
  goto ret0;

 L1924: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1925;
  goto ret0;

 L1925: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L1926;
    }
  goto ret0;

 L1926: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1927;
  goto ret0;

 L1927: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1928;
    }
  goto ret0;

 L1928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L1929;
  goto ret0;

 L1929: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1930;
  goto ret0;

 L1930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5979 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 225;  /* *addvsi4_1 */
    }
  goto ret0;

 L2183: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2184;
  goto ret0;

 L2184: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2185;
    }
  goto ret0;

 L2185: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2186;
  if (const_int_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L2256;
    }
  goto ret0;

 L2186: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x86_64_sext_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2187;
    }
  goto ret0;

 L2187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2188;
  goto ret0;

 L2188: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L2189;
  goto ret0;

 L2189: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2190;
  goto ret0;

 L2190: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2191;
  goto ret0;

 L2191: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2192;
  goto ret0;

 L2192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2193;
    }
  goto ret0;

 L2193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MINUS)
    goto L2194;
  goto ret0;

 L2194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2195;
  goto ret0;

 L2195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, SImode, operands)))
    {
      return 245;  /* *subvsi4 */
    }
  goto ret0;

 L2256: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2257;
  goto ret0;

 L2257: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MINUS)
    goto L2258;
  goto ret0;

 L2258: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2259;
  goto ret0;

 L2259: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2260;
    }
  goto ret0;

 L2260: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2261;
  goto ret0;

 L2261: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2262;
    }
  goto ret0;

 L2262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MINUS)
    goto L2263;
  goto ret0;

 L2263: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2264;
  goto ret0;

 L2264: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6284 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, SImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 249;  /* *subvsi4_1 */
    }
  goto ret0;

 L2697: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode)
    goto L63660;
  goto ret0;

 L63660: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case SIGN_EXTEND:
      goto L2698;
    case ZERO_EXTEND:
      goto L2788;
    default:
     break;
   }
  goto ret0;

 L2698: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2699;
    }
  goto ret0;

 L2699: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2700;
  if (const_int_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L2752;
    }
  goto ret0;

 L2700: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x86_64_sext_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2701;
    }
  goto ret0;

 L2701: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2702;
  goto ret0;

 L2702: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MULT)
    goto L2703;
  goto ret0;

 L2703: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2704;
  goto ret0;

 L2704: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2705;
  goto ret0;

 L2705: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2706;
  goto ret0;

 L2706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2707;
    }
  goto ret0;

 L2707: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L2708;
  goto ret0;

 L2708: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2709;
  goto ret0;

 L2709: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6648 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 275;  /* *mulvsi4 */
    }
  goto ret0;

 L2752: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2753;
  goto ret0;

 L2753: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MULT)
    goto L2754;
  goto ret0;

 L2754: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2755;
  goto ret0;

 L2755: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2756;
    }
  goto ret0;

 L2756: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2757;
  goto ret0;

 L2757: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2758;
    }
  goto ret0;

 L2758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L2759;
  goto ret0;

 L2759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2760;
  goto ret0;

 L2760: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6683 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])))
    {
      return 278;  /* *mulvsi4_1 */
    }
  goto ret0;

 L2788: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2789;
    }
  goto ret0;

 L2789: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L2790;
  goto ret0;

 L2790: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2791;
    }
  goto ret0;

 L2791: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L2792;
  goto ret0;

 L2792: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MULT)
    goto L2793;
  goto ret0;

 L2793: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2794;
  goto ret0;

 L2794: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2795;
  goto ret0;

 L2795: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2796;
  goto ret0;

 L2796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2797;
    }
  goto ret0;

 L2797: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L2798;
  goto ret0;

 L2798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2799;
  goto ret0;

 L2799: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6745 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2])))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 279;  /* *umulvsi4 */
    }
  goto ret0;

 L63648: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1867;
    case MINUS:
      goto L2201;
    default:
     break;
   }
  goto ret0;

 L1867: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == TImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1868;
  goto ret0;

 L1868: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, DImode))
    {
      operands[1] = x5;
      goto L1869;
    }
  goto ret0;

 L1869: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == TImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L1870;
  if (const_int_operand (x4, TImode))
    {
      operands[3] = x4;
      goto L1939;
    }
  goto ret0;

 L1870: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x86_64_sext_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L1871;
    }
  goto ret0;

 L1871: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == TImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1872;
  goto ret0;

 L1872: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == PLUS)
    goto L1873;
  goto ret0;

 L1873: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1874;
  goto ret0;

 L1874: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L1875;
  goto ret0;

 L1875: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1876;
  goto ret0;

 L1876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1877;
    }
  goto ret0;

 L1877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L1878;
  goto ret0;

 L1878: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1879;
  goto ret0;

 L1879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 5962 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 222;  /* *addvdi4 */
    }
  goto ret0;

 L1939: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == TImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L1940;
  goto ret0;

 L1940: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == PLUS)
    goto L1941;
  goto ret0;

 L1941: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L1942;
  goto ret0;

 L1942: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L1943;
    }
  goto ret0;

 L1943: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1944;
  goto ret0;

 L1944: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1945;
    }
  goto ret0;

 L1945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L1946;
  goto ret0;

 L1946: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1947;
  goto ret0;

 L1947: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 5979 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 226;  /* *addvdi4_1 */
    }
  goto ret0;

 L2201: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == TImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2202;
  goto ret0;

 L2202: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, DImode))
    {
      operands[1] = x5;
      goto L2203;
    }
  goto ret0;

 L2203: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == TImode
      && GET_CODE (x4) == SIGN_EXTEND)
    goto L2204;
  if (const_int_operand (x4, TImode))
    {
      operands[3] = x4;
      goto L2273;
    }
  goto ret0;

 L2204: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (x86_64_sext_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L2205;
    }
  goto ret0;

 L2205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == TImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2206;
  goto ret0;

 L2206: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == MINUS)
    goto L2207;
  goto ret0;

 L2207: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2208;
  goto ret0;

 L2208: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2209;
  goto ret0;

 L2209: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2210;
  goto ret0;

 L2210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2211;
    }
  goto ret0;

 L2211: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MINUS)
    goto L2212;
  goto ret0;

 L2212: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2213;
  goto ret0;

 L2213: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 6267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 246;  /* *subvdi4 */
    }
  goto ret0;

 L2273: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == TImode
      && GET_CODE (x3) == SIGN_EXTEND)
    goto L2274;
  goto ret0;

 L2274: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == MINUS)
    goto L2275;
  goto ret0;

 L2275: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2276;
  goto ret0;

 L2276: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x86_64_immediate_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L2277;
    }
  goto ret0;

 L2277: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2278;
  goto ret0;

 L2278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2279;
    }
  goto ret0;

 L2279: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MINUS)
    goto L2280;
  goto ret0;

 L2280: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2281;
  goto ret0;

 L2281: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 6284 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, DImode, operands)
   && CONST_INT_P (operands[2])
   && INTVAL (operands[2]) == INTVAL (operands[3])) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 250;  /* *subvdi4_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_127 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1519;
    case NEG:
      goto L1571;
    case MINUS:
      goto L2095;
    case AND:
      goto L3585;
    case IOR:
      goto L3902;
    case XOR:
      goto L3915;
    case NOT:
      goto L4933;
    case ASHIFT:
      goto L5134;
    case LSHIFTRT:
      goto L5561;
    case ASHIFTRT:
      goto L5574;
    case REG:
    case SUBREG:
    case MEM:
      goto L63695;
    default:
      goto ret0;
   }
 L63695: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L1639;
    }
  goto ret0;

 L1519: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L1520;
    }
  goto ret0;

 L1520: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L1521;
    }
  goto ret0;

 L1521: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L1522;
  goto ret0;

 L1522: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L1523;
    case CLOBBER:
      goto L1688;
    default:
     break;
   }
  goto ret0;

 L1523: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1524;
    }
  goto ret0;

 L1524: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L1525;
  goto ret0;

 L1525: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1526;
  goto ret0;

 L1526: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5571 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 202;  /* *addqi_2 */
    }
  goto ret0;

 L1688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1689;
    }
  goto ret0;

 L1689: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 213;  /* *addqi_5 */
    }
  goto ret0;

 L1571: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L1572;
    }
  goto ret0;

 L1572: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L1573;
    }
  goto ret0;

 L1573: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1574;
  goto ret0;

 L1574: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1575;
    }
  goto ret0;

 L1575: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 206;  /* *addqi_3 */
    }
  goto ret0;

 L2095: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L2096;
    }
  goto ret0;

 L2096: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L2097;
    }
  goto ret0;

 L2097: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2098;
  goto ret0;

 L2098: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2099;
  goto ret0;

 L2099: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2100;
    }
  goto ret0;

 L2100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MINUS)
    goto L2101;
  goto ret0;

 L2101: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2102;
  goto ret0;

 L2102: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6207 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (MINUS, QImode, operands)))
    {
      return 239;  /* *subqi_2 */
    }
  goto ret0;

 L3585: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode)
    goto L63730;
  goto ret0;

 L63730: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L3586;
    }
 L63731: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[0] = x4;
      goto L3638;
    }
  goto ret0;

 L3586: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L3587;
    }
  x4 = XEXP (x3, 0);
  goto L63731;

 L3587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3588;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63731;

 L3588: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3589;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63731;

 L3589: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L3590;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63731;

 L3590: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == AND)
    goto L3591;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63731;

 L3591: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3592;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63731;

 L3592: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8119 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, QImode, operands)
   && ix86_match_ccmode (insn,
			 CONST_INT_P (operands[2])
			 && INTVAL (operands[2]) >= 0 ? CCNOmode : CCZmode)))
    {
      return 329;  /* *andqi_2_maybe_si */
    }
 L3605: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (AND, QImode, operands)))
    {
      return 330;  /* *andqi_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63731;

 L3638: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L3639;
    }
  goto ret0;

 L3639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3640;
  goto ret0;

 L3640: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3641;
  goto ret0;

 L3641: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == STRICT_LOW_PART)
    goto L3642;
  goto ret0;

 L3642: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L3643;
  goto ret0;

 L3643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == AND)
    goto L3644;
  goto ret0;

 L3644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L3645;
  goto ret0;

 L3645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8172 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 333;  /* *andqi_2_slp */
    }
  goto ret0;

 L3902: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode)
    goto L63732;
  goto ret0;

 L63732: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L3903;
    }
 L63733: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[0] = x4;
      goto L4114;
    }
  goto ret0;

 L3903: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L3904;
    }
  x4 = XEXP (x3, 0);
  goto L63733;

 L3904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3905;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L3905: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3906;
    case CLOBBER:
      goto L4145;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L3906: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L3907;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L3907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == IOR)
    goto L3908;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L3908: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3909;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L3909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (IOR, QImode, operands)))
    {
      return 348;  /* *iorqi_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L4145: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L4146;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L4146: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 367;  /* *iorqi_3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63733;

 L4114: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L4115;
    }
  goto ret0;

 L4115: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4116;
  goto ret0;

 L4116: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4117;
  goto ret0;

 L4117: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == STRICT_LOW_PART)
    goto L4118;
  goto ret0;

 L4118: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L4119;
  goto ret0;

 L4119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == IOR)
    goto L4120;
  goto ret0;

 L4120: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L4121;
  goto ret0;

 L4121: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8565 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 365;  /* *iorqi_2_slp */
    }
  goto ret0;

 L3915: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode)
    goto L63734;
  goto ret0;

 L63734: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L3916;
    }
 L63735: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[0] = x4;
      goto L4128;
    }
  goto ret0;

 L3916: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L3917;
    }
  x4 = XEXP (x3, 0);
  goto L63735;

 L3917: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3918;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L3918: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3919;
    case CLOBBER:
      goto L4163;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L3919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L3920;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L3920: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == XOR)
    goto L3921;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L3921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3922;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L3922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (XOR, QImode, operands)))
    {
      return 349;  /* *xorqi_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L4163: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L4164;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L4164: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 368;  /* *xorqi_3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63735;

 L4128: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L4129;
    }
  goto ret0;

 L4129: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4130;
  goto ret0;

 L4130: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4131;
  goto ret0;

 L4131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == STRICT_LOW_PART)
    goto L4132;
  goto ret0;

 L4132: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L4133;
  goto ret0;

 L4133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == XOR)
    goto L4134;
  goto ret0;

 L4134: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L4135;
  goto ret0;

 L4135: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8565 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 366;  /* *xorqi_2_slp */
    }
  goto ret0;

 L4933: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L4934;
    }
  goto ret0;

 L4934: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4935;
  goto ret0;

 L4935: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4936;
  goto ret0;

 L4936: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L4937;
    }
  goto ret0;

 L4937: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == NOT)
    goto L4938;
  goto ret0;

 L4938: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 9188 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_unary_operator_ok (NOT, QImode, operands)))
    {
      return 426;  /* *one_cmplqi2_2 */
    }
  goto ret0;

 L5134: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode)
    goto L63736;
  goto ret0;

 L63736: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L5135;
    }
 L63737: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L5187;
    }
  goto ret0;

 L5135: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5136;
    }
  x4 = XEXP (x3, 0);
  goto L63737;

 L5136: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5137;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63737;

 L5137: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5138;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63737;

 L5138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L5139;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63737;

 L5139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == ASHIFT)
    goto L5140;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63737;

 L5140: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5141;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63737;

 L5141: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 9737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || (TARGET_DOUBLE_WITH_ADD && REG_P (operands[0])))))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFT, QImode, operands)))
    {
      return 440;  /* *ashlqi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63737;

 L5187: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5188;
    }
  goto ret0;

 L5188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5189;
  goto ret0;

 L5189: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5190;
  goto ret0;

 L5190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L5191;
    }
  goto ret0;

 L5191: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 444;  /* *ashlqi3_cconly */
    }
  goto ret0;

 L5561: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode)
    goto L63738;
  goto ret0;

 L63738: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L5562;
    }
 L63739: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L5666;
    }
  goto ret0;

 L5562: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5563;
    }
  x4 = XEXP (x3, 0);
  goto L63739;

 L5563: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5564;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63739;

 L5564: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5565;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63739;

 L5565: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L5566;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63739;

 L5566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L5567;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63739;

 L5567: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5568;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63739;

 L5568: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (LSHIFTRT, QImode, operands)))
    {
      return 468;  /* *lshrqi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63739;

 L5666: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5667;
    }
  goto ret0;

 L5667: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5668;
  goto ret0;

 L5668: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5669;
  goto ret0;

 L5669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L5670;
    }
  goto ret0;

 L5670: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 476;  /* *lshrqi3_cconly */
    }
  goto ret0;

 L5574: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode)
    goto L63740;
  goto ret0;

 L63740: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L5575;
    }
 L63741: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L5684;
    }
  goto ret0;

 L5575: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5576;
    }
  x4 = XEXP (x3, 0);
  goto L63741;

 L5576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5577;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63741;

 L5577: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5578;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63741;

 L5578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L5579;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63741;

 L5579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == ASHIFTRT)
    goto L5580;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63741;

 L5580: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5581;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63741;

 L5581: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFTRT, QImode, operands)))
    {
      return 469;  /* *ashrqi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63741;

 L5684: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5685;
    }
  goto ret0;

 L5685: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5686;
  goto ret0;

 L5686: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5687;
  goto ret0;

 L5687: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L5688;
    }
  goto ret0;

 L5688: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 477;  /* *ashrqi3_cconly */
    }
  goto ret0;

 L1639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L1640;
    }
 L2287: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2288;
    }
  goto ret0;

 L1640: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1641;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2287;

 L1641: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1642;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2287;

 L1642: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGCmode)))
    {
      return 210;  /* *addqi_4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2287;

 L2288: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2289;
  goto ret0;

 L2289: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2290;
    }
  goto ret0;

 L2290: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MINUS)
    goto L2291;
  goto ret0;

 L2291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2292;
  goto ret0;

 L2292: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6303 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)
   && ix86_binary_operator_ok (MINUS, QImode, operands)))
    {
      return 251;  /* *subqi_3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_128 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1532;
    case NEG:
      goto L1588;
    case MINUS:
      goto L2108;
    case AND:
      goto L3611;
    case IOR:
      goto L3928;
    case XOR:
      goto L3941;
    case NOT:
      goto L4944;
    case ASHIFT:
      goto L5147;
    case LSHIFTRT:
      goto L5587;
    case ASHIFTRT:
      goto L5600;
    case REG:
    case SUBREG:
    case MEM:
      goto L63696;
    default:
      goto ret0;
   }
 L63696: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L1654;
    }
  goto ret0;

 L1532: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L1533;
    }
  goto ret0;

 L1533: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L1534;
    }
  goto ret0;

 L1534: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L1535;
  goto ret0;

 L1535: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L1536;
    case CLOBBER:
      goto L1706;
    default:
     break;
   }
  goto ret0;

 L1536: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1537;
    }
  goto ret0;

 L1537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L1538;
  goto ret0;

 L1538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1539;
  goto ret0;

 L1539: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5571 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (PLUS, HImode, operands)))
    {
      return 203;  /* *addhi_2 */
    }
  goto ret0;

 L1706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1707;
    }
  goto ret0;

 L1707: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 214;  /* *addhi_5 */
    }
  goto ret0;

 L1588: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L1589;
    }
  goto ret0;

 L1589: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L1590;
    }
  goto ret0;

 L1590: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1591;
  goto ret0;

 L1591: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1592;
    }
  goto ret0;

 L1592: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 207;  /* *addhi_3 */
    }
  goto ret0;

 L2108: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L2109;
    }
  goto ret0;

 L2109: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L2110;
    }
  goto ret0;

 L2110: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2111;
  goto ret0;

 L2111: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2112;
  goto ret0;

 L2112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L2113;
    }
  goto ret0;

 L2113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MINUS)
    goto L2114;
  goto ret0;

 L2114: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2115;
  goto ret0;

 L2115: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6207 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (MINUS, HImode, operands)))
    {
      return 240;  /* *subhi_2 */
    }
  goto ret0;

 L3611: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L3612;
    }
  goto ret0;

 L3612: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L3613;
    }
  goto ret0;

 L3613: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3614;
  goto ret0;

 L3614: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3615;
  goto ret0;

 L3615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L3616;
    }
  goto ret0;

 L3616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == AND)
    goto L3617;
  goto ret0;

 L3617: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3618;
  goto ret0;

 L3618: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (AND, HImode, operands)))
    {
      return 331;  /* *andhi_2 */
    }
  goto ret0;

 L3928: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L3929;
    }
  goto ret0;

 L3929: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L3930;
    }
  goto ret0;

 L3930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3931;
  goto ret0;

 L3931: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3932;
    case CLOBBER:
      goto L4181;
    default:
     break;
   }
  goto ret0;

 L3932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L3933;
    }
  goto ret0;

 L3933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == IOR)
    goto L3934;
  goto ret0;

 L3934: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3935;
  goto ret0;

 L3935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (IOR, HImode, operands)))
    {
      return 350;  /* *iorhi_2 */
    }
  goto ret0;

 L4181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L4182;
    }
  goto ret0;

 L4182: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 369;  /* *iorhi_3 */
    }
  goto ret0;

 L3941: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L3942;
    }
  goto ret0;

 L3942: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L3943;
    }
  goto ret0;

 L3943: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3944;
  goto ret0;

 L3944: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3945;
    case CLOBBER:
      goto L4199;
    default:
     break;
   }
  goto ret0;

 L3945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L3946;
    }
  goto ret0;

 L3946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == XOR)
    goto L3947;
  goto ret0;

 L3947: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3948;
  goto ret0;

 L3948: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (XOR, HImode, operands)))
    {
      return 351;  /* *xorhi_2 */
    }
  goto ret0;

 L4199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L4200;
    }
  goto ret0;

 L4200: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 370;  /* *xorhi_3 */
    }
  goto ret0;

 L4944: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L4945;
    }
  goto ret0;

 L4945: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4946;
  goto ret0;

 L4946: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4947;
  goto ret0;

 L4947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L4948;
    }
  goto ret0;

 L4948: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == NOT)
    goto L4949;
  goto ret0;

 L4949: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 9188 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_unary_operator_ok (NOT, HImode, operands)))
    {
      return 427;  /* *one_cmplhi2_2 */
    }
  goto ret0;

 L5147: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode)
    goto L63742;
  goto ret0;

 L63742: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L5148;
    }
 L63743: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L5205;
    }
  goto ret0;

 L5148: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5149;
    }
  x4 = XEXP (x3, 0);
  goto L63743;

 L5149: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5150;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63743;

 L5150: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5151;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63743;

 L5151: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L5152;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63743;

 L5152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ASHIFT)
    goto L5153;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63743;

 L5153: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5154;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63743;

 L5154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 9737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || (TARGET_DOUBLE_WITH_ADD && REG_P (operands[0])))))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFT, HImode, operands)))
    {
      return 441;  /* *ashlhi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63743;

 L5205: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5206;
    }
  goto ret0;

 L5206: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5207;
  goto ret0;

 L5207: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5208;
  goto ret0;

 L5208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L5209;
    }
  goto ret0;

 L5209: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 445;  /* *ashlhi3_cconly */
    }
  goto ret0;

 L5587: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode)
    goto L63744;
  goto ret0;

 L63744: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L5588;
    }
 L63745: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L5702;
    }
  goto ret0;

 L5588: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5589;
    }
  x4 = XEXP (x3, 0);
  goto L63745;

 L5589: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5590;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63745;

 L5590: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5591;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63745;

 L5591: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L5592;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63745;

 L5592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L5593;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63745;

 L5593: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5594;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63745;

 L5594: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (LSHIFTRT, HImode, operands)))
    {
      return 470;  /* *lshrhi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63745;

 L5702: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5703;
    }
  goto ret0;

 L5703: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5704;
  goto ret0;

 L5704: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5705;
  goto ret0;

 L5705: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L5706;
    }
  goto ret0;

 L5706: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 478;  /* *lshrhi3_cconly */
    }
  goto ret0;

 L5600: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == HImode)
    goto L63746;
  goto ret0;

 L63746: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L5601;
    }
 L63747: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L5720;
    }
  goto ret0;

 L5601: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5602;
    }
  x4 = XEXP (x3, 0);
  goto L63747;

 L5602: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5603;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63747;

 L5603: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5604;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63747;

 L5604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L5605;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63747;

 L5605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == ASHIFTRT)
    goto L5606;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63747;

 L5606: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5607;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63747;

 L5607: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFTRT, HImode, operands)))
    {
      return 471;  /* *ashrhi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63747;

 L5720: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5721;
    }
  goto ret0;

 L5721: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5722;
  goto ret0;

 L5722: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5723;
  goto ret0;

 L5723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L5724;
    }
  goto ret0;

 L5724: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 479;  /* *ashrhi3_cconly */
    }
  goto ret0;

 L1654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L1655;
    }
 L2298: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L2299;
    }
  goto ret0;

 L1655: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1656;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2298;

 L1656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1657;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2298;

 L1657: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGCmode)))
    {
      return 211;  /* *addhi_4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2298;

 L2299: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2300;
  goto ret0;

 L2300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L2301;
    }
  goto ret0;

 L2301: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MINUS)
    goto L2302;
  goto ret0;

 L2302: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2303;
  goto ret0;

 L2303: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6303 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)
   && ix86_binary_operator_ok (MINUS, HImode, operands)))
    {
      return 252;  /* *subhi_3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_129 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1545;
    case NEG:
      goto L1605;
    case MINUS:
      goto L2121;
    case AND:
      goto L3624;
    case IOR:
      goto L3954;
    case XOR:
      goto L3967;
    case NOT:
      goto L4955;
    case ASHIFT:
      goto L5160;
    case LSHIFTRT:
      goto L5613;
    case ASHIFTRT:
      goto L5626;
    case REG:
    case SUBREG:
    case MEM:
      goto L63697;
    default:
      goto ret0;
   }
 L63697: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1669;
    }
  goto ret0;

 L1545: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L1546;
    }
  goto ret0;

 L1546: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L1547;
    }
  goto ret0;

 L1547: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L1548;
  goto ret0;

 L1548: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L1549;
    case CLOBBER:
      goto L1724;
    default:
     break;
   }
  goto ret0;

 L1549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1550;
    }
  goto ret0;

 L1550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L1551;
  goto ret0;

 L1551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1552;
  goto ret0;

 L1552: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5571 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 204;  /* *addsi_2 */
    }
  goto ret0;

 L1724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1725;
    }
  goto ret0;

 L1725: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 215;  /* *addsi_5 */
    }
  goto ret0;

 L1605: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L1606;
    }
  goto ret0;

 L1606: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1607;
    }
  goto ret0;

 L1607: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1608;
  goto ret0;

 L1608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1609;
    }
  goto ret0;

 L1609: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 208;  /* *addsi_3 */
    }
  goto ret0;

 L2121: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L2122;
    }
  goto ret0;

 L2122: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L2123;
    }
  goto ret0;

 L2123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2124;
  goto ret0;

 L2124: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2125;
  goto ret0;

 L2125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2126;
    }
  goto ret0;

 L2126: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MINUS)
    goto L2127;
  goto ret0;

 L2127: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2128;
  goto ret0;

 L2128: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6207 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (MINUS, SImode, operands)))
    {
      return 241;  /* *subsi_2 */
    }
  goto ret0;

 L3624: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L63749;
  goto ret0;

 L63749: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == ZERO_EXTRACT)
    goto L3678;
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L3625;
    }
  goto ret0;

 L3678: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (ext_register_operand (x5, VOIDmode))
    {
      operands[1] = x5;
      goto L3679;
    }
  goto ret0;

 L3679: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3680;
  goto ret0;

 L3680: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3681;
  goto ret0;

 L3681: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L3682;
    }
  goto ret0;

 L3682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3683;
  goto ret0;

 L3683: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3684;
  goto ret0;

 L3684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L3685;
  goto ret0;

 L3685: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L3686;
    }
  goto ret0;

 L3686: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3687;
  goto ret0;

 L3687: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3688;
  goto ret0;

 L3688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == AND)
    goto L3689;
  goto ret0;

 L3689: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L3690;
  goto ret0;

 L3690: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L3691;
  goto ret0;

 L3691: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3692;
  goto ret0;

 L3692: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L3693;
  goto ret0;

 L3693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8221 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 335;  /* *andqi_ext_0_cc */
    }
  goto ret0;

 L3625: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L3626;
    }
  goto ret0;

 L3626: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3627;
  goto ret0;

 L3627: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3628;
  goto ret0;

 L3628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L3629;
    }
  goto ret0;

 L3629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == AND)
    goto L3630;
  goto ret0;

 L3630: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3631;
  goto ret0;

 L3631: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (AND, SImode, operands)))
    {
      return 332;  /* *andsi_2 */
    }
  goto ret0;

 L3954: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L3955;
    }
  goto ret0;

 L3955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L3956;
    }
  goto ret0;

 L3956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3957;
  goto ret0;

 L3957: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3958;
    case CLOBBER:
      goto L4217;
    default:
     break;
   }
  goto ret0;

 L3958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L3959;
    }
  goto ret0;

 L3959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == IOR)
    goto L3960;
  goto ret0;

 L3960: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3961;
  goto ret0;

 L3961: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (IOR, SImode, operands)))
    {
      return 352;  /* *iorsi_2 */
    }
  goto ret0;

 L4217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L4218;
    }
  goto ret0;

 L4218: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 371;  /* *iorsi_3 */
    }
  goto ret0;

 L3967: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L63751;
  goto ret0;

 L63751: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == ZERO_EXTRACT)
    goto L4456;
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L3968;
    }
  goto ret0;

 L4456: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (ext_register_operand (x5, VOIDmode))
    {
      operands[1] = x5;
      goto L4457;
    }
  goto ret0;

 L4457: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4458;
  goto ret0;

 L4458: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 2);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4459;
  goto ret0;

 L4459: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_x64nomem_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L4460;
    }
  goto ret0;

 L4460: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4461;
  goto ret0;

 L4461: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4462;
  goto ret0;

 L4462: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ZERO_EXTRACT)
    goto L4463;
  goto ret0;

 L4463: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ext_register_operand (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L4464;
    }
  goto ret0;

 L4464: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4465;
  goto ret0;

 L4465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4466;
  goto ret0;

 L4466: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == XOR)
    goto L4467;
  goto ret0;

 L4467: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ZERO_EXTRACT)
    goto L4468;
  goto ret0;

 L4468: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L4469;
  goto ret0;

 L4469: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4470;
  goto ret0;

 L4470: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L4471;
  goto ret0;

 L4471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8724 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return 381;  /* *xorqi_cc_ext_1 */
    }
  goto ret0;

 L3968: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L3969;
    }
  goto ret0;

 L3969: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3970;
  goto ret0;

 L3970: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3971;
    case CLOBBER:
      goto L4235;
    default:
     break;
   }
  goto ret0;

 L3971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L3972;
    }
  goto ret0;

 L3972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == XOR)
    goto L3973;
  goto ret0;

 L3973: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3974;
  goto ret0;

 L3974: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (XOR, SImode, operands)))
    {
      return 353;  /* *xorsi_2 */
    }
  goto ret0;

 L4235: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L4236;
    }
  goto ret0;

 L4236: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 372;  /* *xorsi_3 */
    }
  goto ret0;

 L4955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L4956;
    }
  goto ret0;

 L4956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4957;
  goto ret0;

 L4957: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4958;
  goto ret0;

 L4958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L4959;
    }
  goto ret0;

 L4959: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L4960;
  goto ret0;

 L4960: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 9188 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_unary_operator_ok (NOT, SImode, operands)))
    {
      return 428;  /* *one_cmplsi2_2 */
    }
  goto ret0;

 L5160: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L63752;
  goto ret0;

 L63752: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5161;
    }
 L63753: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5223;
    }
  goto ret0;

 L5161: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5162;
    }
  x4 = XEXP (x3, 0);
  goto L63753;

 L5162: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5163;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63753;

 L5163: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5164;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63753;

 L5164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L5165;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63753;

 L5165: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ASHIFT)
    goto L5166;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63753;

 L5166: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5167;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63753;

 L5167: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 9737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || (TARGET_DOUBLE_WITH_ADD && REG_P (operands[0])))))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFT, SImode, operands)))
    {
      return 442;  /* *ashlsi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63753;

 L5223: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5224;
    }
  goto ret0;

 L5224: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5225;
  goto ret0;

 L5225: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5226;
  goto ret0;

 L5226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L5227;
    }
  goto ret0;

 L5227: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 446;  /* *ashlsi3_cconly */
    }
  goto ret0;

 L5613: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L63754;
  goto ret0;

 L63754: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5614;
    }
 L63755: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5738;
    }
  goto ret0;

 L5614: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5615;
    }
  x4 = XEXP (x3, 0);
  goto L63755;

 L5615: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5616;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63755;

 L5616: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5617;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63755;

 L5617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L5618;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63755;

 L5618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L5619;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63755;

 L5619: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5620;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63755;

 L5620: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (LSHIFTRT, SImode, operands)))
    {
      return 472;  /* *lshrsi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63755;

 L5738: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5739;
    }
  goto ret0;

 L5739: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5740;
  goto ret0;

 L5740: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5741;
  goto ret0;

 L5741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L5742;
    }
  goto ret0;

 L5742: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 480;  /* *lshrsi3_cconly */
    }
  goto ret0;

 L5626: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L63756;
  goto ret0;

 L63756: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5627;
    }
 L63757: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L5756;
    }
  goto ret0;

 L5627: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5628;
    }
  x4 = XEXP (x3, 0);
  goto L63757;

 L5628: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5629;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63757;

 L5629: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5630;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63757;

 L5630: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L5631;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63757;

 L5631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == ASHIFTRT)
    goto L5632;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63757;

 L5632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5633;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63757;

 L5633: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFTRT, SImode, operands)))
    {
      return 473;  /* *ashrsi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63757;

 L5756: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_31_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5757;
    }
  goto ret0;

 L5757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5758;
  goto ret0;

 L5758: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5759;
  goto ret0;

 L5759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L5760;
    }
  goto ret0;

 L5760: ATTRIBUTE_UNUSED_LABEL
  if (
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)))
    {
      return 481;  /* *ashrsi3_cconly */
    }
  goto ret0;

 L1669: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L1670;
    }
 L2309: ATTRIBUTE_UNUSED_LABEL
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2310;
    }
  goto ret0;

 L1670: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1671;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2309;

 L1671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1672;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2309;

 L1672: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5794 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGCmode)))
    {
      return 212;  /* *addsi_4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L2309;

 L2310: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2311;
  goto ret0;

 L2311: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2312;
    }
  goto ret0;

 L2312: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MINUS)
    goto L2313;
  goto ret0;

 L2313: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2314;
  goto ret0;

 L2314: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6303 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)
   && ix86_binary_operator_ok (MINUS, SImode, operands)))
    {
      return 253;  /* *subsi_3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_130 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L1558;
    case NEG:
      goto L1622;
    case MINUS:
      goto L2134;
    case IOR:
      goto L3980;
    case XOR:
      goto L3993;
    case NOT:
      goto L4966;
    case ASHIFT:
      goto L5173;
    case LSHIFTRT:
      goto L5639;
    case ASHIFTRT:
      goto L5652;
    case REG:
    case SUBREG:
    case MEM:
      goto L63702;
    default:
      goto ret0;
   }
 L63702: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L2320;
    }
  goto ret0;

 L1558: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L1559;
    }
  goto ret0;

 L1559: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L1560;
    }
  goto ret0;

 L1560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L1561;
  goto ret0;

 L1561: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L1562;
    case CLOBBER:
      goto L1742;
    default:
     break;
   }
  goto ret0;

 L1562: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1563;
    }
  goto ret0;

 L1563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L1564;
  goto ret0;

 L1564: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1565;
  goto ret0;

 L1565: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 5571 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 205;  /* *adddi_2 */
    }
  goto ret0;

 L1742: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1743;
    }
  goto ret0;

 L1743: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5833 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 216;  /* *adddi_5 */
    }
  goto ret0;

 L1622: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L1623;
    }
  goto ret0;

 L1623: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L1624;
    }
  goto ret0;

 L1624: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1625;
  goto ret0;

 L1625: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1626;
    }
  goto ret0;

 L1626: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5657 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCZmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 209;  /* *adddi_3 */
    }
  goto ret0;

 L2134: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L2135;
    }
  goto ret0;

 L2135: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L2136;
    }
  goto ret0;

 L2136: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2137;
  goto ret0;

 L2137: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2138;
  goto ret0;

 L2138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2139;
    }
  goto ret0;

 L2139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MINUS)
    goto L2140;
  goto ret0;

 L2140: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2141;
  goto ret0;

 L2141: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 6207 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 242;  /* *subdi_2 */
    }
  goto ret0;

 L3980: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L3981;
    }
  goto ret0;

 L3981: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L3982;
    }
  goto ret0;

 L3982: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3983;
  goto ret0;

 L3983: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3984;
    case CLOBBER:
      goto L4253;
    default:
     break;
   }
  goto ret0;

 L3984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L3985;
    }
  goto ret0;

 L3985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == IOR)
    goto L3986;
  goto ret0;

 L3986: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L3987;
  goto ret0;

 L3987: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (IOR, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 354;  /* *iordi_2 */
    }
  goto ret0;

 L4253: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L4254;
    }
  goto ret0;

 L4254: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 373;  /* *iordi_3 */
    }
  goto ret0;

 L3993: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L3994;
    }
  goto ret0;

 L3994: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L3995;
    }
  goto ret0;

 L3995: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3996;
  goto ret0;

 L3996: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L3997;
    case CLOBBER:
      goto L4271;
    default:
     break;
   }
  goto ret0;

 L3997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L3998;
    }
  goto ret0;

 L3998: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == XOR)
    goto L3999;
  goto ret0;

 L3999: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L4000;
  goto ret0;

 L4000: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 8413 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_binary_operator_ok (XOR, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 355;  /* *xordi_2 */
    }
  goto ret0;

 L4271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L4272;
    }
  goto ret0;

 L4272: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 8579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 374;  /* *xordi_3 */
    }
  goto ret0;

 L4966: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L4967;
    }
  goto ret0;

 L4967: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4968;
  goto ret0;

 L4968: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4969;
  goto ret0;

 L4969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L4970;
    }
  goto ret0;

 L4970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == NOT)
    goto L4971;
  goto ret0;

 L4971: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && (
#line 9188 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && ix86_unary_operator_ok (NOT, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 429;  /* *one_cmpldi2_2 */
    }
  goto ret0;

 L5173: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode)
    goto L63758;
  goto ret0;

 L63758: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L5174;
    }
 L63759: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L5241;
    }
  goto ret0;

 L5174: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_63_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5175;
    }
  x4 = XEXP (x3, 0);
  goto L63759;

 L5175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5176;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63759;

 L5176: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5177;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63759;

 L5177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5178;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63759;

 L5178: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == ASHIFT)
    goto L5179;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63759;

 L5179: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5180;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63759;

 L5180: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 9737 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || (TARGET_DOUBLE_WITH_ADD && REG_P (operands[0])))))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFT, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 443;  /* *ashldi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63759;

 L5241: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_63_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5242;
    }
  goto ret0;

 L5242: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5243;
  goto ret0;

 L5243: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5244;
  goto ret0;

 L5244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5245;
    }
  goto ret0;

 L5245: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9832 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& (TARGET_SHIFT1
	    || TARGET_DOUBLE_WITH_ADD)))
   && ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 447;  /* *ashldi3_cconly */
    }
  goto ret0;

 L5639: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode)
    goto L63760;
  goto ret0;

 L63760: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L5640;
    }
 L63761: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L5774;
    }
  goto ret0;

 L5640: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_63_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5641;
    }
  x4 = XEXP (x3, 0);
  goto L63761;

 L5641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5642;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63761;

 L5642: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5643;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63761;

 L5643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5644;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63761;

 L5644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == LSHIFTRT)
    goto L5645;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63761;

 L5645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5646;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63761;

 L5646: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (LSHIFTRT, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 474;  /* *lshrdi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63761;

 L5774: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_63_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5775;
    }
  goto ret0;

 L5775: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5776;
  goto ret0;

 L5776: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5777;
  goto ret0;

 L5777: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5778;
    }
  goto ret0;

 L5778: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 482;  /* *lshrdi3_cconly */
    }
  goto ret0;

 L5652: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode)
    goto L63762;
  goto ret0;

 L63762: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L5653;
    }
 L63763: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L5792;
    }
  goto ret0;

 L5653: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_63_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5654;
    }
  x4 = XEXP (x3, 0);
  goto L63763;

 L5654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5655;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63763;

 L5655: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L5656;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63763;

 L5656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5657;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63763;

 L5657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == ASHIFTRT)
    goto L5658;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63763;

 L5658: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L5659;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63763;

 L5659: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 10209 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)
   && ix86_binary_operator_ok (ASHIFTRT, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 475;  /* *ashrdi3_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L63763;

 L5792: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_1_to_63_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L5793;
    }
  goto ret0;

 L5793: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L5794;
  goto ret0;

 L5794: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5795;
  goto ret0;

 L5795: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5796;
    }
  goto ret0;

 L5796: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[2] == const1_rtx
	&& TARGET_SHIFT1))
   && ix86_match_ccmode (insn, CCGOCmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 483;  /* *ashrdi3_cconly */
    }
  goto ret0;

 L2320: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L2321;
    }
  goto ret0;

 L2321: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2322;
  goto ret0;

 L2322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2323;
    }
  goto ret0;

 L2323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MINUS)
    goto L2324;
  goto ret0;

 L2324: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2325;
  goto ret0;

 L2325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 6303 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCmode)
   && ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 254;  /* *subdi_3 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_131 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L63810;
    case CTZ:
      goto L7514;
    case CLZ:
      goto L7579;
    case AND:
      goto L7644;
    case XOR:
      goto L7689;
    case ZERO_EXTRACT:
      goto L7723;
    case IOR:
      goto L7812;
    case MINUS:
      goto L7958;
    case POPCOUNT:
      goto L7990;
    case PLUS:
      goto L8221;
    case IF_THEN_ELSE:
      goto L9876;
    case SIGN_EXTRACT:
      goto L9895;
    case NEG:
      goto L9914;
    case UNSPEC_VOLATILE:
      goto L63815;
    case FIX:
      goto L19920;
    case UNSIGNED_FIX:
      goto L20535;
    default:
     break;
   }
  goto ret0;

 L63810: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L63823;
    case 2:
      goto L63824;
    case 4:
      goto L63825;
    case 5:
      goto L63830;
    case 3:
      goto L63831;
    default:
      break;
    }
  goto ret0;

 L63823: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 14LL:
      goto L7433;
    case 56LL:
      goto L9024;
    case 41LL:
      goto L19897;
    case 150LL:
      goto L20517;
    default:
      break;
    }
  goto ret0;

 L7433: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_CODE (x3))
    {
    case CONST_INT:
      goto L63832;
    case LABEL_REF:
      goto L7445;
    default:
     break;
   }
  goto ret0;

 L63832: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x3, 0) == 0LL)
    goto L7434;
  goto ret0;

 L7434: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7435;
  goto ret0;

 L7435: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 585;  /* set_got */
    }
  goto ret0;

 L7445: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[1] = x4;
  goto L7446;

 L7446: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7447;
  goto ret0;

 L7447: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 586;  /* set_got_labelled */
    }
  goto ret0;

 L9024: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9025;
    }
  goto ret0;

 L9025: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9026;
  goto ret0;

 L9026: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9027;
    }
  goto ret0;

 L9027: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15387 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 734;  /* fistsi2_with_temp */
    }
  goto ret0;

 L19897: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63833;
    case DFmode:
      goto L63834;
    default:
      break;
    }
  goto ret0;

 L63833: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L19898;
  goto ret0;

 L19898: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L19899;
    }
  goto ret0;

 L19899: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L19900;
  goto ret0;

 L19900: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L19901;
  goto ret0;

 L19901: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19902;
  goto ret0;

 L19902: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L19903;
    }
  goto ret0;

 L19903: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3890 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1924;  /* sse_cvtss2si_round */
    }
  goto ret0;

 L63834: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20590;
  goto ret0;

 L20590: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L20591;
    }
  goto ret0;

 L20591: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L20592;
  goto ret0;

 L20592: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20593;
  goto ret0;

 L20593: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20594;
  goto ret0;

 L20594: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20595;
    }
  goto ret0;

 L20595: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4381 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2012;  /* sse2_cvtsd2si_round */
    }
  goto ret0;

 L20517: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63835;
    case DFmode:
      goto L63836;
    default:
      break;
    }
  goto ret0;

 L63835: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20518;
  goto ret0;

 L20518: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L20519;
    }
  goto ret0;

 L20519: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L20520;
  goto ret0;

 L20520: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20521;
  goto ret0;

 L20521: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20522;
  goto ret0;

 L20522: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20523;
    }
  goto ret0;

 L20523: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2004;  /* avx512f_vcvtss2usi_round */
    }
  goto ret0;

 L63836: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20554;
  goto ret0;

 L20554: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L20555;
    }
  goto ret0;

 L20555: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L20556;
  goto ret0;

 L20556: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20557;
  goto ret0;

 L20557: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20558;
  goto ret0;

 L20558: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20559;
    }
  goto ret0;

 L20559: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2008;  /* avx512f_vcvtsd2usi_round */
    }
  goto ret0;

 L63824: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 84)
    goto L7660;
  goto ret0;

 L7660: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7661;
    }
  goto ret0;

 L7661: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L7662;
    }
  goto ret0;

 L7662: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7663;
  goto ret0;

 L7663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12633 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI))
    {
      return 605;  /* bmi_bextr_si */
    }
  goto ret0;

 L63825: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 22LL:
      goto L8295;
    case 24LL:
      goto L9839;
    default:
      break;
    }
  goto ret0;

 L8295: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (tls_symbolic_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L8296;
    }
  goto ret0;

 L8296: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L8297;
    }
  goto ret0;

 L8297: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L8298;
    }
  goto ret0;

 L8298: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L8299;
  goto ret0;

 L8299: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8300;
  goto ret0;

 L8300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 13522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU2_TLS))
    {
      return 649;  /* *tls_dynamic_gnu2_call_32 */
    }
  goto ret0;

 L9839: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9840;
  goto ret0;

 L9840: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L9841;
    }
  goto ret0;

 L9841: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L9842;
    }
  goto ret0;

 L9842: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (immediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9843;
    }
  goto ret0;

 L9843: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L9844;
    }
  goto ret0;

 L9844: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9845;
  goto ret0;

 L9845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9846;
    }
  goto ret0;

 L9846: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16566 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 792;  /* *strlenqi_1 */
    }
  goto ret0;

 L63830: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 121)
    goto L39094;
  goto ret0;

 L39094: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L39095;
    }
  goto ret0;

 L39095: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39096;
    }
  goto ret0;

 L39096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L39097;
    }
  goto ret0;

 L39097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L39098;
    }
  goto ret0;

 L39098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L39099;
    }
  goto ret0;

 L39099: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39100;
  goto ret0;

 L39100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39101;
  goto ret0;

 L39101: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L39102;
  goto ret0;

 L39102: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L39103;
  goto ret0;

 L39103: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L39104;
  goto ret0;

 L39104: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[3]))
    goto L39105;
  goto ret0;

 L39105: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[4]))
    goto L39106;
  goto ret0;

 L39106: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[5])
      && 
#line 14823 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3691;  /* sse4_2_pcmpestri */
    }
  goto ret0;

 L63831: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 122)
    goto L39192;
  goto ret0;

 L39192: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L39193;
    }
  goto ret0;

 L39193: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L39194;
    }
  goto ret0;

 L39194: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39195;
    }
  goto ret0;

 L39195: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39196;
  goto ret0;

 L39196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39197;
  goto ret0;

 L39197: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L39198;
  goto ret0;

 L39198: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L39199;
  goto ret0;

 L39199: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L39200;
  goto ret0;

 L39200: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 15010 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3696;  /* sse4_2_pcmpistri */
    }
  goto ret0;

 L7514: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7515;
    }
  goto ret0;

 L7515: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L7516;
    case UNSPEC:
      goto L63837;
    default:
     break;
   }
  goto ret0;

 L7516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63838;
  goto ret0;

 L63838: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63840;
  goto ret0;

 L63840: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63842;
  goto ret0;

 L63842: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_BMI || TARGET_GENERIC)
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)))
    {
      return 594;  /* *ctzsi2_falsedep_1 */
    }
 L63843: ATTRIBUTE_UNUSED_LABEL
  return 598;  /* *ctzsi2 */

 L63837: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 40)
    goto L7549;
  goto ret0;

 L7549: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7550;
    }
  goto ret0;

 L7550: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 596;  /* *ctzsi2_falsedep */
    }
  goto ret0;

 L7579: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7580;
    }
  goto ret0;

 L7580: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L7581;
    case UNSPEC:
      goto L63844;
    default:
     break;
   }
  goto ret0;

 L7581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63845;
  goto ret0;

 L63845: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63847;
  goto ret0;

 L63847: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63849;
  goto ret0;

 L63849: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12576 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)))
    {
      return 599;  /* *clzsi2_lzcnt_falsedep_1 */
    }
 L63850: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12607 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT))
    {
      return 603;  /* *clzsi2_lzcnt */
    }
  goto ret0;

 L63844: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 40)
    goto L7614;
  goto ret0;

 L7614: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7615;
    }
  goto ret0;

 L7615: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12597 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 601;  /* *clzsi2_lzcnt_falsedep */
    }
  goto ret0;

 L7644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L63851;
  goto ret0;

 L63851: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case NOT:
      goto L7645;
    case NEG:
      goto L7675;
    case PLUS:
      goto L7707;
    default:
     break;
   }
  goto ret0;

 L7645: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7646;
    }
  goto ret0;

 L7646: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L7647;
    }
  goto ret0;

 L7647: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7648;
  goto ret0;

 L7648: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12621 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI))
    {
      return 604;  /* *bmi_andn_si */
    }
  goto ret0;

 L7675: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7676;
    }
  goto ret0;

 L7676: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7677;
  goto ret0;

 L7677: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7678;
  goto ret0;

 L7678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12646 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI))
    {
      return 606;  /* *bmi_blsi_si */
    }
  goto ret0;

 L7707: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7708;
    }
  goto ret0;

 L7708: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == CONST_INT)
    goto L63854;
  goto ret0;

 L63854: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case -1LL:
        goto L7709;
      case 1LL:
        goto L7798;
      default:
        break;
      }
  goto ret0;

 L7709: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7710;
 L7942: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == NOT)
    goto L7943;
  goto ret0;

 L7710: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7711;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7942;

 L7711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12674 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI))
    {
      return 608;  /* *bmi_blsr_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7942;

 L7943: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L7944;
  goto ret0;

 L7944: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7945;
  goto ret0;

 L7945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12882 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 622;  /* *tbm_tzmsk_si */
    }
  goto ret0;

 L7798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7799;
 L7834: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == NOT)
    goto L7835;
  goto ret0;

 L7799: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7800;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7834;

 L7800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12773 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 614;  /* *tbm_blcfill_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7834;

 L7835: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L7836;
  goto ret0;

 L7836: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7837;
  goto ret0;

 L7837: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12801 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 616;  /* *tbm_blcic_si */
    }
  goto ret0;

 L7689: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L7690;
  goto ret0;

 L7690: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7691;
    }
  goto ret0;

 L7691: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == CONST_INT)
    goto L63856;
  goto ret0;

 L63856: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case -1LL:
        goto L7692;
      case 1LL:
        goto L7853;
      default:
        break;
      }
  goto ret0;

 L7692: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7693;
  goto ret0;

 L7693: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7694;
  goto ret0;

 L7694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI))
    {
      return 607;  /* *bmi_blsmsk_si */
    }
  goto ret0;

 L7853: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7854;
  goto ret0;

 L7854: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7855;
  goto ret0;

 L7855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12814 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 617;  /* *tbm_blcmsk_si */
    }
  goto ret0;

 L7723: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7724;
    }
  goto ret0;

 L7724: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UMIN)
    goto L7725;
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L7781;
    }
  goto ret0;

 L7725: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L63858;
  goto ret0;

 L63858: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case AND:
      goto L7726;
    case ZERO_EXTEND:
      goto L7749;
    default:
     break;
   }
  goto ret0;

 L7726: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L7727;
    }
  goto ret0;

 L7727: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == CONST_INT
      && XWINT (x5, 0) == 255LL)
    goto L7728;
  goto ret0;

 L7728: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L7729;
    }
  goto ret0;

 L7729: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L7730;
  goto ret0;

 L7730: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7731;
  goto ret0;

 L7731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT))
    {
      return 609;  /* *bmi2_bzhi_si3 */
    }
  goto ret0;

 L7749: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, QImode))
    {
      operands[2] = x5;
      goto L7750;
    }
  goto ret0;

 L7750: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L7751;
    }
  goto ret0;

 L7751: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L7752;
  goto ret0;

 L7752: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7753;
  goto ret0;

 L7753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT))
    {
      return 610;  /* *bmi2_bzhi_si3_1 */
    }
  goto ret0;

 L7781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L7782;
    }
  goto ret0;

 L7782: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7783;
  goto ret0;

 L7783: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12757 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 613;  /* tbm_bextri_si */
    }
  goto ret0;

 L7812: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L63860;
  goto ret0;

 L63860: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case NOT:
      goto L7813;
    case PLUS:
      goto L7868;
    default:
     break;
   }
  goto ret0;

 L7813: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L7814;
  goto ret0;

 L7814: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L7815;
    }
  goto ret0;

 L7815: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L7816;
  goto ret0;

 L7816: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7817;
  goto ret0;

 L7817: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7818;
  goto ret0;

 L7818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12787 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 615;  /* *tbm_blci_si */
    }
  goto ret0;

 L7868: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7869;
    }
  goto ret0;

 L7869: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == CONST_INT)
    goto L63862;
  goto ret0;

 L63862: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x4, 0) == XWINT (x4, 0))
    switch ((int) XWINT (x4, 0))
      {
      case 1LL:
        goto L7870;
      case -1LL:
        goto L7887;
      default:
        break;
      }
  goto ret0;

 L7870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7871;
 L7923: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == NOT)
    goto L7924;
  goto ret0;

 L7871: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7872;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7923;

 L7872: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12827 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 618;  /* *tbm_blcs_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7923;

 L7924: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L7925;
  goto ret0;

 L7925: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7926;
  goto ret0;

 L7926: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12868 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 621;  /* *tbm_t1mskc_si */
    }
  goto ret0;

 L7887: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L7888;
 L7904: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == NOT)
    goto L7905;
  goto ret0;

 L7888: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7889;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7904;

 L7889: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12840 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 619;  /* *tbm_blsfill_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L7904;

 L7905: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L7906;
  goto ret0;

 L7906: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7907;
  goto ret0;

 L7907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12854 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_TBM))
    {
      return 620;  /* *tbm_blsic_si */
    }
  goto ret0;

 L7958: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L7959;
  goto ret0;

 L7959: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == CLZ)
    goto L7960;
  goto ret0;

 L7960: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7961;
    }
  goto ret0;

 L7961: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7962;
  goto ret0;

 L7962: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 623;  /* bsr */
    }
  goto ret0;

 L7990: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7991;
    }
  goto ret0;

 L7991: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L7992;
    case UNSPEC:
      goto L63864;
    default:
     break;
   }
  goto ret0;

 L7992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63865;
  goto ret0;

 L63865: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63867;
  goto ret0;

 L63867: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63869;
  goto ret0;

 L63869: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12933 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)))
    {
      return 625;  /* *popcountsi2_falsedep_1 */
    }
 L63870: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12971 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT))
    {
      return 629;  /* *popcountsi2 */
    }
  goto ret0;

 L63864: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 40)
    goto L8025;
  goto ret0;

 L8025: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L8026;
    }
  goto ret0;

 L8026: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12954 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 627;  /* *popcountsi2_falsedep */
    }
  goto ret0;

 L8221: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L63871;
  goto ret0;

 L63871: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC)
    goto L63873;
  goto ret0;

 L63873: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x3, 0))
    {
    case 1:
      goto L63875;
    case 4:
      goto L63876;
    default:
      break;
    }
  goto ret0;

 L63875: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 19)
    goto L8222;
  goto ret0;

 L8222: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L8223;
  goto ret0;

 L8223: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8224;
    }
  goto ret0;

 L8224: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8225;
  goto ret0;

 L8225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L63877;
  goto ret0;

 L63877: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63879;
  goto ret0;

 L63879: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L63881;
  goto ret0;

 L63881: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13429 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_X32))
    {
      return 644;  /* *add_tp_x32 */
    }
 L63882: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13456 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 646;  /* *add_tp_si */
    }
  goto ret0;

 L63876: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 22)
    goto L8313;
  goto ret0;

 L8313: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (tls_modbase_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L8314;
    }
  goto ret0;

 L8314: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  operands[4] = x4;
  goto L8315;

 L8315: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L8316;
    }
  goto ret0;

 L8316: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L8317;
  goto ret0;

 L8317: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == CONST)
    goto L8318;
  goto ret0;

 L8318: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 6)
    goto L8319;
  goto ret0;

 L8319: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (tls_symbolic_operand (x5, VOIDmode))
    {
      operands[1] = x5;
      goto L8320;
    }
  goto ret0;

 L8320: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8321;
  goto ret0;

 L8321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 13540 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU2_TLS))
    {
      return 650;  /* *tls_dynamic_gnu2_combine_32 */
    }
  goto ret0;

 L9876: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L9877;
    }
  goto ret0;

 L9877: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L9878;
  goto ret0;

 L9878: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9879;
  goto ret0;

 L9879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)])
    goto L9880;
  goto ret0;

 L9880: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9881;
  goto ret0;

 L9881: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9882;
  goto ret0;

 L9882: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 794;  /* *x86_movsicc_0_m1 */
    }
  goto ret0;

 L9895: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L9896;
    }
  goto ret0;

 L9896: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L9897;
  goto ret0;

 L9897: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9898;
  goto ret0;

 L9898: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L9899;
  goto ret0;

 L9899: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9900;
  goto ret0;

 L9900: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9901;
  goto ret0;

 L9901: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 795;  /* *x86_movsicc_0_m1_se */
    }
  goto ret0;

 L9914: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_carry_flag_operator (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L9915;
    }
  goto ret0;

 L9915: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L9916;
  goto ret0;

 L9916: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9917;
  goto ret0;

 L9917: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9918;
  goto ret0;

 L9918: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 796;  /* *x86_movsicc_0_m1_neg */
    }
  goto ret0;

 L63815: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L63883;
    case 2:
      goto L63884;
    default:
      break;
    }
  goto ret0;

 L63883: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 1LL:
      goto L10089;
    case 39LL:
      goto L10483;
    case 40LL:
      goto L10501;
    default:
      break;
    }
  goto ret0;

 L10089: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10090;
    }
  goto ret0;

 L10090: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10091;
  goto ret0;

 L10091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 17122 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_target_stack_probe ()) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 817;  /* allocate_stack_worker_probe_si */
    }
  goto ret0;

 L10483: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10484;
  goto ret0;

 L10484: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10485;
  goto ret0;

 L10485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10486;
  goto ret0;

 L10486: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 39)
    goto L10487;
  goto ret0;

 L10487: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RDRND))
    {
      return 860;  /* rdrandsi_1 */
    }
  goto ret0;

 L10501: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10502;
  goto ret0;

 L10502: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10503;
  goto ret0;

 L10503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10504;
  goto ret0;

 L10504: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 40)
    goto L10505;
  goto ret0;

 L10505: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18731 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RDSEED))
    {
      return 862;  /* rdseedsi_1 */
    }
  goto ret0;

 L63884: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 2)
    goto L10143;
  goto ret0;

 L10143: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10144;
    }
  goto ret0;

 L10144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L10145;
    }
  goto ret0;

 L10145: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10146;
  goto ret0;

 L10146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
    {
      return 821;  /* probe_stack_rangesi */
    }
  goto ret0;

 L19920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63887;
    case DFmode:
      goto L63888;
    default:
      break;
    }
  goto ret0;

 L63887: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L19921;
  goto ret0;

 L19921: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L19922;
    }
  goto ret0;

 L19922: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L19923;
  goto ret0;

 L19923: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L19924;
  goto ret0;

 L19924: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19925;
  goto ret0;

 L19925: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L19926;
    }
  goto ret0;

 L19926: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3949 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1927;  /* sse_cvttss2si_round */
    }
  goto ret0;

 L63888: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20613;
  goto ret0;

 L20613: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L20614;
    }
  goto ret0;

 L20614: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L20615;
  goto ret0;

 L20615: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20616;
  goto ret0;

 L20616: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20617;
  goto ret0;

 L20617: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20618;
    }
  goto ret0;

 L20618: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4441 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2015;  /* sse2_cvttsd2si_round */
    }
  goto ret0;

 L20535: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63889;
    case DFmode:
      goto L63890;
    default:
      break;
    }
  goto ret0;

 L63889: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20536;
  goto ret0;

 L20536: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L20537;
    }
  goto ret0;

 L20537: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L20538;
  goto ret0;

 L20538: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20539;
  goto ret0;

 L20539: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20540;
  goto ret0;

 L20540: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20541;
    }
  goto ret0;

 L20541: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2006;  /* avx512f_vcvttss2usi_round */
    }
  goto ret0;

 L63890: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L20572;
  goto ret0;

 L20572: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L20573;
    }
  goto ret0;

 L20573: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L20574;
  goto ret0;

 L20574: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L20575;
  goto ret0;

 L20575: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20576;
  goto ret0;

 L20576: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20577;
    }
  goto ret0;

 L20577: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2010;  /* avx512f_vcvttsd2usi_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_132 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L63996;
    case 2:
      goto L63997;
    default:
      break;
    }
  goto ret0;

 L63996: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 66LL:
      goto L8685;
    case 68LL:
      goto L8896;
    case 60LL:
      goto L9032;
    case 61LL:
      goto L9044;
    case 62LL:
      goto L9056;
    case 63LL:
      goto L9098;
    default:
      break;
    }
  goto ret0;

 L8685: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode)
    goto L64007;
  goto ret0;

 L64007: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == FLOAT_EXTEND)
    goto L8695;
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8686;
    }
  goto ret0;

 L8695: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L64008;
    case DFmode:
      goto L64009;
    default:
      break;
    }
  goto ret0;

 L64008: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L8696;
    }
  goto ret0;

 L8696: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8697;
  goto ret0;

 L8697: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8698;
    }
  goto ret0;

 L8698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 67)
    goto L8699;
  goto ret0;

 L8699: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8700;
  goto ret0;

 L8700: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14300 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 704;  /* sincos_extendsfxf3_i387 */
    }
  goto ret0;

 L64009: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L8707;
    }
  goto ret0;

 L8707: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8708;
  goto ret0;

 L8708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8709;
    }
  goto ret0;

 L8709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 67)
    goto L8710;
  goto ret0;

 L8710: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8711;
  goto ret0;

 L8711: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14300 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 705;  /* sincos_extenddfxf3_i387 */
    }
  goto ret0;

 L8686: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8687;
  goto ret0;

 L8687: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8688;
    }
  goto ret0;

 L8688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 67)
    goto L8689;
  goto ret0;

 L8689: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 14267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 703;  /* sincosxf3 */
    }
  goto ret0;

 L8896: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode)
    goto L64011;
  goto ret0;

 L64011: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == FLOAT_EXTEND)
    goto L8906;
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8897;
    }
  goto ret0;

 L8906: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L64012;
    case DFmode:
      goto L64013;
    default:
      break;
    }
  goto ret0;

 L64012: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L8907;
    }
  goto ret0;

 L8907: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8908;
  goto ret0;

 L8908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8909;
    }
  goto ret0;

 L8909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 69)
    goto L8910;
  goto ret0;

 L8910: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8911;
  goto ret0;

 L8911: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14781 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 719;  /* fxtract_extendsfxf3_i387 */
    }
  goto ret0;

 L64013: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L8918;
    }
  goto ret0;

 L8918: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8919;
  goto ret0;

 L8919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8920;
    }
  goto ret0;

 L8920: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 69)
    goto L8921;
  goto ret0;

 L8921: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8922;
  goto ret0;

 L8922: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14781 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 720;  /* fxtract_extenddfxf3_i387 */
    }
  goto ret0;

 L8897: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8898;
  goto ret0;

 L8898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8899;
    }
  goto ret0;

 L8899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 69)
    goto L8900;
  goto ret0;

 L8900: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 14768 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 718;  /* fxtractxf3_i387 */
    }
  goto ret0;

 L9032: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9033;
    }
  goto ret0;

 L9033: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9034;
  goto ret0;

 L9034: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 735;  /* frndintxf2_floor */
    }
  goto ret0;

 L9044: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9045;
    }
  goto ret0;

 L9045: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9046;
  goto ret0;

 L9046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 736;  /* frndintxf2_ceil */
    }
  goto ret0;

 L9056: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9057;
    }
  goto ret0;

 L9057: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9058;
  goto ret0;

 L9058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 737;  /* frndintxf2_trunc */
    }
  goto ret0;

 L9098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9099;
    }
  goto ret0;

 L9099: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9100;
  goto ret0;

 L9100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15591 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 741;  /* frndintxf2_mask_pm */
    }
  goto ret0;

 L63997: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 52LL:
      goto L8745;
    case 53LL:
      goto L8798;
    case 54LL:
      goto L8847;
    case 70LL:
      goto L8932;
    default:
      break;
    }
  goto ret0;

 L8745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode)
    goto L64015;
  goto ret0;

 L64015: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == FLOAT_EXTEND)
    goto L8761;
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L8746;
    }
  goto ret0;

 L8761: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L64016;
    case DFmode:
      goto L64017;
    default:
      break;
    }
  goto ret0;

 L64016: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L8762;
    }
  goto ret0;

 L8762: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8763;
  goto ret0;

 L8763: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L8764;
    }
  goto ret0;

 L8764: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8765;
  goto ret0;

 L8765: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8766;
    }
  goto ret0;

 L8766: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14431 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 710;  /* fpatan_extendsfxf3_i387 */
    }
  goto ret0;

 L64017: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L8781;
    }
  goto ret0;

 L8781: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8782;
  goto ret0;

 L8782: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L8783;
    }
  goto ret0;

 L8783: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8784;
  goto ret0;

 L8784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8785;
    }
  goto ret0;

 L8785: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14431 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 711;  /* fpatan_extenddfxf3_i387 */
    }
  goto ret0;

 L8746: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8747;
    }
  goto ret0;

 L8747: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8748;
  goto ret0;

 L8748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8749;
    }
  goto ret0;

 L8749: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14417 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 709;  /* *fpatanxf3_i387 */
    }
  goto ret0;

 L8798: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode)
    goto L64019;
  goto ret0;

 L64019: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == FLOAT_EXTEND)
    goto L8814;
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L8799;
    }
  goto ret0;

 L8814: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L64020;
    case DFmode:
      goto L64021;
    default:
      break;
    }
  goto ret0;

 L64020: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L8815;
    }
  goto ret0;

 L8815: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8816;
    }
  goto ret0;

 L8816: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8817;
  goto ret0;

 L8817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8818;
    }
  goto ret0;

 L8818: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14602 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 713;  /* fyl2x_extendsfxf3_i387 */
    }
  goto ret0;

 L64021: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L8832;
    }
  goto ret0;

 L8832: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8833;
    }
  goto ret0;

 L8833: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8834;
  goto ret0;

 L8834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8835;
    }
  goto ret0;

 L8835: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14602 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 714;  /* fyl2x_extenddfxf3_i387 */
    }
  goto ret0;

 L8799: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8800;
    }
  goto ret0;

 L8800: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8801;
  goto ret0;

 L8801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8802;
    }
  goto ret0;

 L8802: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14589 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 712;  /* fyl2xxf3_i387 */
    }
  goto ret0;

 L8847: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode)
    goto L64023;
  goto ret0;

 L64023: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == FLOAT_EXTEND)
    goto L8863;
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L8848;
    }
  goto ret0;

 L8863: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L64024;
    case DFmode:
      goto L64025;
    default:
      break;
    }
  goto ret0;

 L64024: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L8864;
    }
  goto ret0;

 L8864: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8865;
    }
  goto ret0;

 L8865: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8866;
  goto ret0;

 L8866: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8867;
    }
  goto ret0;

 L8867: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14719 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 716;  /* fyl2xp1_extendsfxf3_i387 */
    }
  goto ret0;

 L64025: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L8881;
    }
  goto ret0;

 L8881: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8882;
    }
  goto ret0;

 L8882: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8883;
  goto ret0;

 L8883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8884;
    }
  goto ret0;

 L8884: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14719 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations))
    {
      return 717;  /* fyl2xp1_extenddfxf3_i387 */
    }
  goto ret0;

 L8848: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8849;
    }
  goto ret0;

 L8849: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8850;
  goto ret0;

 L8850: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8851;
    }
  goto ret0;

 L8851: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14706 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 715;  /* fyl2xp1xf3_i387 */
    }
  goto ret0;

 L8932: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8933;
    }
  goto ret0;

 L8933: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[3] = x3;
      goto L8934;
    }
  goto ret0;

 L8934: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8935;
  goto ret0;

 L8935: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8936;
    }
  goto ret0;

 L8936: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 71)
    goto L8937;
  goto ret0;

 L8937: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L8938;
  goto ret0;

 L8938: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 14873 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 722;  /* fscalexf4_i387 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_133 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L64043;
    case 4:
      goto L64044;
    case 3:
      goto L64045;
    default:
      break;
    }
  goto ret0;

 L64043: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 150)
    goto L20240;
  goto ret0;

 L20240: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V4SFmode:
      goto L64046;
    case V4DFmode:
      goto L64047;
    default:
      break;
    }
  goto ret0;

 L64046: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L20241;
    }
  goto ret0;

 L20241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20242;
  goto ret0;

 L20242: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20243;
    }
  goto ret0;

 L20243: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1968;  /* *avx512vl_ufix_notruncv4sfv4si_round */
    }
  goto ret0;

 L64047: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L21177;
    }
  goto ret0;

 L21177: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21178;
  goto ret0;

 L21178: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21179;
    }
  goto ret0;

 L21179: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2084;  /* ufix_notruncv4dfv4si2_round */
    }
  goto ret0;

 L64044: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L44956;
  goto ret0;

 L44956: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L44957;
    }
  if (GET_CODE (x3) == PC)
    goto L45421;
  goto ret0;

 L44957: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[7] = x3;
      goto L44958;
    }
  goto ret0;

 L44958: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64048;
    case DImode:
      goto L64049;
    default:
      break;
    }
  goto ret0;

 L64048: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44959;
  goto ret0;

 L44959: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L44960;
    }
  goto ret0;

 L44960: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64050;
    case V2DImode:
      goto L64051;
    default:
      break;
    }
  goto ret0;

 L64050: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44961;
    }
  goto ret0;

 L44961: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44962;
    }
  goto ret0;

 L44962: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44963;
  goto ret0;

 L44963: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44964;
  goto ret0;

 L44964: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L44965;
    }
  goto ret0;

 L44965: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44966;
  goto ret0;

 L44966: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44967;
    }
  goto ret0;

 L44967: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4337;  /* *avx2_gathersiv4si */
    }
  goto ret0;

 L64051: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45889;
    }
  goto ret0;

 L45889: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45890;
    }
  goto ret0;

 L45890: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45891;
  goto ret0;

 L45891: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45892;
  goto ret0;

 L45892: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L45893;
    }
  goto ret0;

 L45893: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45894;
  goto ret0;

 L45894: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L45895;
    }
  goto ret0;

 L45895: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4369;  /* *avx2_gatherdiv4si */
    }
  goto ret0;

 L64049: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44988;
  goto ret0;

 L44988: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L44989;
    }
  goto ret0;

 L44989: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64052;
    case V2DImode:
      goto L64053;
    default:
      break;
    }
  goto ret0;

 L64052: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44990;
    }
  goto ret0;

 L44990: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44991;
    }
  goto ret0;

 L44991: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44992;
  goto ret0;

 L44992: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44993;
  goto ret0;

 L44993: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L44994;
    }
  goto ret0;

 L44994: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44995;
  goto ret0;

 L44995: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L44996;
    }
  goto ret0;

 L44996: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4338;  /* *avx2_gathersiv4si */
    }
  goto ret0;

 L64053: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45918;
    }
  goto ret0;

 L45918: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45919;
    }
  goto ret0;

 L45919: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45920;
  goto ret0;

 L45920: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45921;
  goto ret0;

 L45921: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L45922;
    }
  goto ret0;

 L45922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45923;
  goto ret0;

 L45923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L45924;
    }
  goto ret0;

 L45924: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4370;  /* *avx2_gatherdiv4si */
    }
  goto ret0;

 L45421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L45422;
    }
  goto ret0;

 L45422: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64054;
    case DImode:
      goto L64055;
    default:
      break;
    }
  goto ret0;

 L64054: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45423;
  goto ret0;

 L45423: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45424;
    }
  goto ret0;

 L45424: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64056;
    case V2DImode:
      goto L64057;
    default:
      break;
    }
  goto ret0;

 L64056: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45425;
    }
  goto ret0;

 L45425: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45426;
    }
  goto ret0;

 L45426: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45427;
  goto ret0;

 L45427: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45428;
  goto ret0;

 L45428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L45429;
    }
  goto ret0;

 L45429: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45430;
  goto ret0;

 L45430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L45431;
    }
  goto ret0;

 L45431: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4353;  /* *avx2_gathersiv4si_2 */
    }
  goto ret0;

 L64057: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46353;
    }
  goto ret0;

 L46353: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46354;
    }
  goto ret0;

 L46354: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46355;
  goto ret0;

 L46355: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46356;
  goto ret0;

 L46356: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L46357;
    }
  goto ret0;

 L46357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46358;
  goto ret0;

 L46358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L46359;
    }
  goto ret0;

 L46359: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4385;  /* *avx2_gatherdiv4si_2 */
    }
  goto ret0;

 L64055: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45452;
  goto ret0;

 L45452: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45453;
    }
  goto ret0;

 L45453: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64058;
    case V2DImode:
      goto L64059;
    default:
      break;
    }
  goto ret0;

 L64058: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45454;
    }
  goto ret0;

 L45454: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45455;
    }
  goto ret0;

 L45455: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45456;
  goto ret0;

 L45456: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45457;
  goto ret0;

 L45457: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L45458;
    }
  goto ret0;

 L45458: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45459;
  goto ret0;

 L45459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L45460;
    }
  goto ret0;

 L45460: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4354;  /* *avx2_gathersiv4si_2 */
    }
  goto ret0;

 L64059: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46382;
    }
  goto ret0;

 L46382: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46383;
    }
  goto ret0;

 L46383: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46384;
  goto ret0;

 L46384: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46385;
  goto ret0;

 L46385: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L46386;
    }
  goto ret0;

 L46386: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46387;
  goto ret0;

 L46387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L46388;
    }
  goto ret0;

 L46388: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4386;  /* *avx2_gatherdiv4si_2 */
    }
  goto ret0;

 L64045: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47300;
  goto ret0;

 L47300: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L47301;
    }
  if (GET_CODE (x3) == PC)
    goto L47901;
  goto ret0;

 L47301: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47302;
    }
  goto ret0;

 L47302: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L47303;
    }
  goto ret0;

 L47303: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64060;
    case DImode:
      goto L64061;
    default:
      break;
    }
  goto ret0;

 L64060: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47304;
  goto ret0;

 L47304: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47305;
    }
  goto ret0;

 L47305: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64062;
    case V2DImode:
      goto L64063;
    default:
      break;
    }
  goto ret0;

 L64062: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47306;
    }
  goto ret0;

 L47306: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47307;
    }
  goto ret0;

 L47307: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47308;
  goto ret0;

 L47308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47309;
    }
  goto ret0;

 L47309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4417;  /* *avx512f_gathersiv4si */
    }
  goto ret0;

 L64063: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48506;
    }
  goto ret0;

 L48506: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48507;
    }
  goto ret0;

 L48507: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48508;
  goto ret0;

 L48508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48509;
    }
  goto ret0;

 L48509: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4465;  /* *avx512f_gatherdiv4si */
    }
  goto ret0;

 L64061: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47329;
  goto ret0;

 L47329: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47330;
    }
  goto ret0;

 L47330: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64064;
    case V2DImode:
      goto L64065;
    default:
      break;
    }
  goto ret0;

 L64064: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47331;
    }
  goto ret0;

 L47331: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47332;
    }
  goto ret0;

 L47332: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47333;
  goto ret0;

 L47333: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47334;
    }
  goto ret0;

 L47334: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4418;  /* *avx512f_gathersiv4si */
    }
  goto ret0;

 L64065: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48531;
    }
  goto ret0;

 L48531: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48532;
    }
  goto ret0;

 L48532: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48533;
  goto ret0;

 L48533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48534;
    }
  goto ret0;

 L48534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4466;  /* *avx512f_gatherdiv4si */
    }
  goto ret0;

 L47901: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47902;
    }
  goto ret0;

 L47902: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[5] = x3;
      goto L47903;
    }
  goto ret0;

 L47903: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64066;
    case DImode:
      goto L64067;
    default:
      break;
    }
  goto ret0;

 L64066: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47904;
  goto ret0;

 L47904: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47905;
    }
  goto ret0;

 L47905: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64068;
    case V2DImode:
      goto L64069;
    default:
      break;
    }
  goto ret0;

 L64068: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47906;
    }
  goto ret0;

 L47906: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47907;
    }
  goto ret0;

 L47907: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47908;
  goto ret0;

 L47908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47909;
    }
  goto ret0;

 L47909: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4441;  /* *avx512f_gathersiv4si_2 */
    }
  goto ret0;

 L64069: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49106;
    }
  goto ret0;

 L49106: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49107;
    }
  goto ret0;

 L49107: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49108;
  goto ret0;

 L49108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49109;
    }
  goto ret0;

 L49109: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4489;  /* *avx512f_gatherdiv4si_2 */
    }
  goto ret0;

 L64067: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47929;
  goto ret0;

 L47929: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47930;
    }
  goto ret0;

 L47930: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64070;
    case V2DImode:
      goto L64071;
    default:
      break;
    }
  goto ret0;

 L64070: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47931;
    }
  goto ret0;

 L47931: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47932;
    }
  goto ret0;

 L47932: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47933;
  goto ret0;

 L47933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47934;
    }
  goto ret0;

 L47934: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4442;  /* *avx512f_gathersiv4si_2 */
    }
  goto ret0;

 L64071: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49131;
    }
  goto ret0;

 L49131: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49132;
    }
  goto ret0;

 L49132: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49133;
  goto ret0;

 L49133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49134;
    }
  goto ret0;

 L49134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4490;  /* *avx512f_gatherdiv4si_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_134 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case SUBREG:
      goto L64039;
    case UNSPEC:
      goto L64040;
    case VEC_MERGE:
      goto L20256;
    case VEC_CONCAT:
      goto L40565;
    case VEC_SELECT:
      goto L46580;
    default:
     break;
   }
  goto ret0;

 L64039: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 0)
    goto L11944;
  goto ret0;

 L11944: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L11945;
    }
  goto ret0;

 L11945: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L11946;
  goto ret0;

 L11946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L11947;
    }
  goto ret0;

 L11947: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1071 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
    {
      return 1073;  /* movdi_to_sse */
    }
  goto ret0;

 L64040: ATTRIBUTE_UNUSED_LABEL
  return recog_133 (x0, insn, pnum_clobbers);

 L20256: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 150)
    goto L20257;
  goto ret0;

 L20257: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  switch (GET_MODE (x4))
    {
    case V4SFmode:
      goto L64072;
    case V4DFmode:
      goto L64073;
    default:
      break;
    }
  goto ret0;

 L64072: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L20258;
    }
  goto ret0;

 L20258: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L20259;
    }
  goto ret0;

 L20259: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20260;
    }
  goto ret0;

 L20260: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20261;
  goto ret0;

 L20261: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20262;
    }
  goto ret0;

 L20262: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 1970;  /* avx512vl_ufix_notruncv4sfv4si_mask_round */
    }
  goto ret0;

 L64073: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L21194;
    }
  goto ret0;

 L21194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L21195;
    }
  goto ret0;

 L21195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21196;
    }
  goto ret0;

 L21196: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21197;
  goto ret0;

 L21197: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21198;
    }
  goto ret0;

 L21198: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4681 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 247 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2086;  /* ufix_notruncv4dfv4si2_mask_round */
    }
  goto ret0;

 L40565: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == TRUNCATE)
    goto L40566;
  goto ret0;

 L40566: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L40567;
    }
  goto ret0;

 L40567: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V2SImode
      && GET_CODE (x3) == TRUNCATE)
    goto L40568;
  goto ret0;

 L40568: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L40569;
    }
  goto ret0;

 L40569: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L40570;
  goto ret0;

 L40570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40571;
    }
  goto ret0;

 L40571: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15787 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 3807;  /* xop_pperm_pack_v2di_v4si */
    }
  goto ret0;

 L46580: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 4
      && XINT (x3, 1) == 145)
    goto L46581;
  goto ret0;

 L46581: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L46582;
    }
  if (GET_CODE (x4) == PC)
    goto L46742;
  goto ret0;

 L46582: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (vsib_mem_operator (x4, SImode))
    {
      operands[7] = x4;
      goto L46583;
    }
  goto ret0;

 L46583: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case SImode:
      goto L64074;
    case DImode:
      goto L64075;
    default:
      break;
    }
  goto ret0;

 L64074: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46584;
  goto ret0;

 L46584: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, SImode))
    {
      operands[3] = x6;
      goto L46585;
    }
  goto ret0;

 L46585: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[4] = x6;
      goto L46586;
    }
  goto ret0;

 L46586: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[6] = x6;
      goto L46587;
    }
  goto ret0;

 L46587: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46588;
  goto ret0;

 L46588: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46589;
  goto ret0;

 L46589: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SImode))
    {
      operands[5] = x4;
      goto L46590;
    }
  goto ret0;

 L46590: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46591;
  goto ret0;

 L46591: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46592;
  goto ret0;

 L46592: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46593;
  goto ret0;

 L46593: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46594;
  goto ret0;

 L46594: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46595;
  goto ret0;

 L46595: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46596;
  goto ret0;

 L46596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46597;
    }
  goto ret0;

 L46597: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4393;  /* *avx2_gatherdiv8si_3 */
    }
  goto ret0;

 L64075: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46624;
  goto ret0;

 L46624: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, DImode))
    {
      operands[3] = x6;
      goto L46625;
    }
  goto ret0;

 L46625: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[4] = x6;
      goto L46626;
    }
  goto ret0;

 L46626: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[6] = x6;
      goto L46627;
    }
  goto ret0;

 L46627: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46628;
  goto ret0;

 L46628: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46629;
  goto ret0;

 L46629: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SImode))
    {
      operands[5] = x4;
      goto L46630;
    }
  goto ret0;

 L46630: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46631;
  goto ret0;

 L46631: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46632;
  goto ret0;

 L46632: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46633;
  goto ret0;

 L46633: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46634;
  goto ret0;

 L46634: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46635;
  goto ret0;

 L46635: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46636;
  goto ret0;

 L46636: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46637;
    }
  goto ret0;

 L46637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4394;  /* *avx2_gatherdiv8si_3 */
    }
  goto ret0;

 L46742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (vsib_mem_operator (x4, SImode))
    {
      operands[6] = x4;
      goto L46743;
    }
  goto ret0;

 L46743: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case SImode:
      goto L64076;
    case DImode:
      goto L64077;
    default:
      break;
    }
  goto ret0;

 L64076: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46744;
  goto ret0;

 L46744: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L46745;
    }
  goto ret0;

 L46745: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[3] = x6;
      goto L46746;
    }
  goto ret0;

 L46746: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[5] = x6;
      goto L46747;
    }
  goto ret0;

 L46747: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46748;
  goto ret0;

 L46748: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46749;
  goto ret0;

 L46749: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L46750;
    }
  goto ret0;

 L46750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46751;
  goto ret0;

 L46751: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46752;
  goto ret0;

 L46752: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46753;
  goto ret0;

 L46753: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46754;
  goto ret0;

 L46754: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46755;
  goto ret0;

 L46755: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46756;
  goto ret0;

 L46756: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46757;
    }
  goto ret0;

 L46757: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4397;  /* *avx2_gatherdiv8si_4 */
    }
  goto ret0;

 L64077: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46784;
  goto ret0;

 L46784: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, DImode))
    {
      operands[2] = x6;
      goto L46785;
    }
  goto ret0;

 L46785: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[3] = x6;
      goto L46786;
    }
  goto ret0;

 L46786: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[5] = x6;
      goto L46787;
    }
  goto ret0;

 L46787: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46788;
  goto ret0;

 L46788: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46789;
  goto ret0;

 L46789: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SImode))
    {
      operands[4] = x4;
      goto L46790;
    }
  goto ret0;

 L46790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46791;
  goto ret0;

 L46791: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46792;
  goto ret0;

 L46792: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46793;
  goto ret0;

 L46793: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46794;
  goto ret0;

 L46794: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46795;
  goto ret0;

 L46795: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46796;
  goto ret0;

 L46796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46797;
    }
  goto ret0;

 L46797: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4398;  /* *avx2_gatherdiv8si_4 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_135 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (XVECLEN (x3, 0))
    {
    case 3:
      goto L64172;
    case 2:
      goto L64173;
    case 1:
      goto L64174;
    case 4:
      goto L64175;
    default:
      break;
    }
  goto ret0;

 L64172: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 123LL:
      goto L18659;
    case 190LL:
      goto L50684;
    default:
      break;
    }
  goto ret0;

 L18659: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L18660;
    }
  goto ret0;

 L18660: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (GET_MODE (x4) == V16SFmode)
    goto L64183;
  goto ret0;

 L64183: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L18661;
    }
 L64184: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L18799;
    }
  goto ret0;

 L18661: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V16SFmode)
    goto L64186;
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L64186: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19136;
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18662;
    }
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L19136: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L19137;
    }
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L19137: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L19138;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L19138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L19139;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L19139: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19140;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L19140: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L19141;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L19141: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1856;  /* fma_fmsubadd_v16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L18662: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L18663;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L18663: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L18664;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L18664: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18665;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L18665: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18666;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L18666: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1810;  /* fma_fmaddsub_v16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64184;

 L18799: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V16SFmode)
    goto L64189;
  goto ret0;

 L64189: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19289;
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18800;
    }
 L64188: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18938;
    }
  goto ret0;

 L19289: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SFmode)
    goto L64190;
  goto ret0;

 L64190: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L19290;
    }
 L64191: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L19440;
    }
  goto ret0;

 L19290: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19291;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64191;

 L19291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L19292;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64191;

 L19292: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19293;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64191;

 L19293: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19294;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64191;

 L19294: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1871;  /* avx512f_fmsubadd_v16sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64191;

 L19440: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19441;
  goto ret0;

 L19441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L19442;
    }
  goto ret0;

 L19442: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19443;
  goto ret0;

 L19443: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19444;
    }
  goto ret0;

 L19444: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1883;  /* avx512f_fmsubadd_v16sf_mask3_round */
    }
  goto ret0;

 L18800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18801;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64188;

 L18801: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L18802;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64188;

 L18802: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18803;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64188;

 L18803: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18804;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64188;

 L18804: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1825;  /* avx512f_fmaddsub_v16sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64188;

 L18938: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18939;
  goto ret0;

 L18939: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L18940;
    }
  goto ret0;

 L18940: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18941;
  goto ret0;

 L18941: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18942;
    }
  goto ret0;

 L18942: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1837;  /* avx512f_fmaddsub_v16sf_mask3_round */
    }
  goto ret0;

 L50684: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L50685;
    }
  goto ret0;

 L50685: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L50686;
    }
  goto ret0;

 L50686: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L50687;
    }
  goto ret0;

 L50687: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L50688;
    }
  goto ret0;

 L50688: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L50689;
    }
  goto ret0;

 L50689: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50690;
  goto ret0;

 L50690: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L50691;
    }
  goto ret0;

 L50691: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)))))
    {
      return 4584;  /* avx512dq_rangepv16sf_mask_round */
    }
  goto ret0;

 L64173: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 158LL:
      goto L23810;
    case 82LL:
      goto L25126;
    case 161LL:
      goto L50971;
    default:
      break;
    }
  goto ret0;

 L23810: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L23811;
    }
  goto ret0;

 L23811: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L23812;
    }
  goto ret0;

 L23812: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L23813;
    }
  goto ret0;

 L23813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L23814;
    }
  goto ret0;

 L23814: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23815;
  goto ret0;

 L23815: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L23816;
    }
  goto ret0;

 L23816: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2335;  /* avx512f_scalefv16sf_mask_round */
    }
  goto ret0;

 L25126: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L25127;
    }
  goto ret0;

 L25127: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L25128;
    }
  goto ret0;

 L25128: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L25129;
    }
  goto ret0;

 L25129: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L25130;
    }
  goto ret0;

 L25130: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25131;
  goto ret0;

 L25131: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25132;
    }
  goto ret0;

 L25132: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2465;  /* avx512f_rndscalev16sf_mask_round */
    }
  goto ret0;

 L50971: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L50972;
    }
  goto ret0;

 L50972: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L50973;
    }
  goto ret0;

 L50973: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L50974;
    }
  goto ret0;

 L50974: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L50975;
    }
  goto ret0;

 L50975: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50976;
  goto ret0;

 L50976: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L50977;
    }
  goto ret0;

 L50977: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4618;  /* avx512f_getmantv16sf_mask_round */
    }
  goto ret0;

 L64174: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 160LL:
      goto L24203;
    case 172LL:
      goto L39547;
    case 173LL:
      goto L39611;
    case 174LL:
      goto L39711;
    case 141LL:
      goto L44659;
    default:
      break;
    }
  goto ret0;

 L24203: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L24204;
    }
  goto ret0;

 L24204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L24205;
    }
  goto ret0;

 L24205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L24206;
    }
  goto ret0;

 L24206: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24207;
  goto ret0;

 L24207: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24208;
    }
  goto ret0;

 L24208: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2377;  /* avx512f_getexpv16sf_mask_round */
    }
  goto ret0;

 L39547: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L39548;
    }
  goto ret0;

 L39548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L39549;
    }
  goto ret0;

 L39549: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L39550;
    }
  goto ret0;

 L39550: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39551;
  goto ret0;

 L39551: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39552;
    }
  goto ret0;

 L39552: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))))
    {
      return 3734;  /* avx512er_exp2v16sf_mask_round */
    }
  goto ret0;

 L39611: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L39612;
    }
  goto ret0;

 L39612: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L39613;
    }
  goto ret0;

 L39613: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L39614;
    }
  goto ret0;

 L39614: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39615;
  goto ret0;

 L39615: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39616;
    }
  goto ret0;

 L39616: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))))
    {
      return 3742;  /* avx512er_rcp28v16sf_mask_round */
    }
  goto ret0;

 L39711: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L39712;
    }
  goto ret0;

 L39712: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L39713;
    }
  goto ret0;

 L39713: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L39714;
    }
  goto ret0;

 L39714: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39715;
  goto ret0;

 L39715: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39716;
    }
  goto ret0;

 L39716: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))))
    {
      return 3754;  /* avx512er_rsqrt28v16sf_mask_round */
    }
  goto ret0;

 L44659: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16HImode))
    {
      operands[1] = x4;
      goto L44660;
    }
  goto ret0;

 L44660: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L44661;
    }
  goto ret0;

 L44661: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L44662;
    }
  goto ret0;

 L44662: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L44663;
  goto ret0;

 L44663: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L44664;
    }
  goto ret0;

 L44664: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4321;  /* avx512f_vcvtph2ps512_mask_round */
    }
  goto ret0;

 L64175: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 157)
    goto L24546;
  goto ret0;

 L24546: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L24547;
    }
  goto ret0;

 L24547: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L24548;
    }
  goto ret0;

 L24548: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[3] = x4;
      goto L24549;
    }
  goto ret0;

 L24549: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24550;
    }
  goto ret0;

 L24550: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[5] = x3;
      goto L24551;
    }
 L24795: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L24796;
  goto ret0;

 L24551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L24552;
    }
  x3 = XEXP (x2, 1);
  goto L24795;

 L24552: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24553;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24795;

 L24553: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24554;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24795;

 L24554: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2417;  /* avx512f_fixupimmv16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24795;

 L24796: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L24797;
    }
  goto ret0;

 L24797: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24798;
  goto ret0;

 L24798: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L24799;
    }
  goto ret0;

 L24799: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2439;  /* avx512f_fixupimmv16sf_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_136 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L12558;
    case MINUS:
      goto L12594;
    case MULT:
      goto L13070;
    case DIV:
      goto L13366;
    case SQRT:
      goto L13604;
    case SMAX:
      goto L13868;
    case SMIN:
      goto L13904;
    case FMA:
      goto L16661;
    case UNSPEC:
      goto L64141;
    case FLOAT:
      goto L19981;
    case UNSIGNED_FLOAT:
      goto L20039;
    default:
     break;
   }
  goto ret0;

 L12558: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L12559;
    }
  goto ret0;

 L12559: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L12560;
    }
  goto ret0;

 L12560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L12561;
    }
  goto ret0;

 L12561: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L12562;
    }
  goto ret0;

 L12562: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12563;
  goto ret0;

 L12563: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12564;
    }
  goto ret0;

 L12564: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands) && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1167;  /* *addv16sf3_mask_round */
    }
  goto ret0;

 L12594: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L12595;
    }
  goto ret0;

 L12595: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L12596;
    }
  goto ret0;

 L12596: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L12597;
    }
  goto ret0;

 L12597: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L12598;
    }
  goto ret0;

 L12598: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12599;
  goto ret0;

 L12599: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12600;
    }
  goto ret0;

 L12600: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands) && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1171;  /* *subv16sf3_mask_round */
    }
  goto ret0;

 L13070: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L13071;
    }
  goto ret0;

 L13071: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L13072;
    }
  goto ret0;

 L13072: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L13073;
    }
  goto ret0;

 L13073: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L13074;
    }
  goto ret0;

 L13074: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13075;
  goto ret0;

 L13075: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13076;
    }
  goto ret0;

 L13076: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands) && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1223;  /* *mulv16sf3_mask_round */
    }
  goto ret0;

 L13366: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L13367;
    }
  goto ret0;

 L13367: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L13368;
    }
  goto ret0;

 L13368: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L13369;
    }
  goto ret0;

 L13369: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L13370;
    }
  goto ret0;

 L13370: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13371;
  goto ret0;

 L13371: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13372;
    }
  goto ret0;

 L13372: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1255;  /* avx512f_divv16sf3_mask_round */
    }
  goto ret0;

 L13604: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L13605;
    }
  goto ret0;

 L13605: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13606;
    }
  goto ret0;

 L13606: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L13607;
    }
  goto ret0;

 L13607: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13608;
  goto ret0;

 L13608: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L13609;
    }
  goto ret0;

 L13609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1288;  /* avx512f_sqrtv16sf2_mask_round */
    }
  goto ret0;

 L13868: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L13869;
    }
  goto ret0;

 L13869: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L13870;
    }
  goto ret0;

 L13870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L13871;
    }
  goto ret0;

 L13871: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L13872;
    }
  goto ret0;

 L13872: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13873;
  goto ret0;

 L13873: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13874;
    }
  goto ret0;

 L13874: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V16SFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1325;  /* *smaxv16sf3_finite_mask_round */
    }
 L14306: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1373;  /* *smaxv16sf3_mask_round */
    }
  goto ret0;

 L13904: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L13905;
    }
  goto ret0;

 L13905: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L13906;
    }
  goto ret0;

 L13906: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L13907;
    }
  goto ret0;

 L13907: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L13908;
    }
  goto ret0;

 L13908: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13909;
  goto ret0;

 L13909: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13910;
    }
  goto ret0;

 L13910: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V16SFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1329;  /* *sminv16sf3_finite_mask_round */
    }
 L14342: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1377;  /* *sminv16sf3_mask_round */
    }
  goto ret0;

 L16661: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V16SFmode)
    goto L64153;
  goto ret0;

 L64153: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17572;
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L16662;
    }
  goto ret0;

 L17572: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V16SFmode))
    {
      operands[1] = x5;
      goto L17573;
    }
  goto ret0;

 L17573: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V16SFmode)
    goto L64154;
  goto ret0;

 L64154: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L17574;
    }
 L64155: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L17727;
    }
  goto ret0;

 L17574: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V16SFmode)
    goto L64157;
  x4 = XEXP (x3, 1);
  goto L64155;

 L64157: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18181;
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17575;
    }
  x4 = XEXP (x3, 1);
  goto L64155;

 L18181: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L18182;
    }
  x4 = XEXP (x3, 1);
  goto L64155;

 L18182: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L18183;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L18183: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L18184;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L18184: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18185;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L18185: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18186;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L18186: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1768;  /* fma_fnmsub_v16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L17575: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L17576;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L17576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L17577;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L17577: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17578;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L17578: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L17579;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L17579: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1714;  /* fma_fnmadd_v16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64155;

 L17727: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V16SFmode)
    goto L64160;
  goto ret0;

 L64160: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18349;
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17728;
    }
 L64159: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17822;
    }
  goto ret0;

 L18349: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SFmode)
    goto L64161;
  goto ret0;

 L64161: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L18350;
    }
 L64162: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L18452;
    }
  goto ret0;

 L18350: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18351;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64162;

 L18351: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L18352;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64162;

 L18352: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18353;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64162;

 L18353: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18354;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64162;

 L18354: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1783;  /* avx512f_fnmsub_v16sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64162;

 L18452: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18453;
  goto ret0;

 L18453: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L18454;
    }
  goto ret0;

 L18454: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18455;
  goto ret0;

 L18455: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18456;
    }
  goto ret0;

 L18456: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1791;  /* avx512f_fnmsub_v16sf_mask3_round */
    }
  goto ret0;

 L17728: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17729;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64159;

 L17729: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L17730;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64159;

 L17730: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17731;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64159;

 L17731: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17732;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64159;

 L17732: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1729;  /* avx512f_fnmadd_v16sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64159;

 L17822: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L17823;
  goto ret0;

 L17823: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L17824;
    }
  goto ret0;

 L17824: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17825;
  goto ret0;

 L17825: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17826;
    }
  goto ret0;

 L17826: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1737;  /* avx512f_fnmadd_v16sf_mask3_round */
    }
  goto ret0;

 L16662: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V16SFmode)
    goto L64163;
  goto ret0;

 L64163: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L16663;
    }
 L64164: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L16801;
    }
  goto ret0;

 L16663: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V16SFmode)
    goto L64166;
  x4 = XEXP (x3, 1);
  goto L64164;

 L64166: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17102;
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L16664;
    }
  x4 = XEXP (x3, 1);
  goto L64164;

 L17102: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L17103;
    }
  x4 = XEXP (x3, 1);
  goto L64164;

 L17103: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L17104;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L17104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L17105;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L17105: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17106;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L17106: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L17107;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L17107: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1670;  /* fma_fmsub_v16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L16664: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V16SFmode))
    {
      operands[4] = x3;
      goto L16665;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L16665: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[5] = x3;
      goto L16666;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L16666: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16667;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L16667: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L16668;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L16668: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1626;  /* fma_fmadd_v16sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64164;

 L16801: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V16SFmode)
    goto L64169;
  goto ret0;

 L64169: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17255;
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L16802;
    }
 L64168: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L16888;
    }
  goto ret0;

 L17255: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V16SFmode)
    goto L64170;
  goto ret0;

 L64170: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L17256;
    }
 L64171: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V16SFmode))
    {
      operands[3] = x5;
      goto L17406;
    }
  goto ret0;

 L17256: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17257;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64171;

 L17257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L17258;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64171;

 L17258: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17259;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64171;

 L17259: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17260;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64171;

 L17260: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1685;  /* avx512f_fmsub_v16sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64171;

 L17406: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L17407;
  goto ret0;

 L17407: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L17408;
    }
  goto ret0;

 L17408: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17409;
  goto ret0;

 L17409: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17410;
    }
  goto ret0;

 L17410: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1697;  /* avx512f_fmsub_v16sf_mask3_round */
    }
  goto ret0;

 L16802: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L16803;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64168;

 L16803: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L16804;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64168;

 L16804: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16805;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64168;

 L16805: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16806;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64168;

 L16806: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1641;  /* avx512f_fmadd_v16sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64168;

 L16888: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L16889;
  goto ret0;

 L16889: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L16890;
    }
  goto ret0;

 L16890: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16891;
  goto ret0;

 L16891: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16892;
    }
  goto ret0;

 L16892: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1649;  /* avx512f_fmadd_v16sf_mask3_round */
    }
  goto ret0;

 L64141: ATTRIBUTE_UNUSED_LABEL
  return recog_135 (x0, insn, pnum_clobbers);

 L19981: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L19982;
    }
  goto ret0;

 L19982: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L19983;
    }
  goto ret0;

 L19983: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L19984;
    }
  goto ret0;

 L19984: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19985;
  goto ret0;

 L19985: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19986;
    }
  goto ret0;

 L19986: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1934;  /* floatv16siv16sf2_mask_round */
    }
  goto ret0;

 L20039: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L20040;
    }
  goto ret0;

 L20040: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L20041;
    }
  goto ret0;

 L20041: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L20042;
    }
  goto ret0;

 L20042: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20043;
  goto ret0;

 L20043: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20044;
    }
  goto ret0;

 L20044: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1942;  /* ufloatv16siv16sf2_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_137 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L64198;
    case 2:
      goto L64199;
    case 1:
      goto L64200;
    case 4:
      goto L64201;
    default:
      break;
    }
  goto ret0;

 L64198: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 123LL:
      goto L18638;
    case 145LL:
      goto L46950;
    case 190LL:
      goto L50663;
    default:
      break;
    }
  goto ret0;

 L18638: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L18639;
    }
  goto ret0;

 L18639: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L18640;
    }
  goto ret0;

 L18640: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L64211;
  goto ret0;

 L64211: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19113;
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L18641;
    }
  goto ret0;

 L19113: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L19114;
    }
  goto ret0;

 L19114: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19115;
  goto ret0;

 L19115: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19116;
    }
  goto ret0;

 L19116: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1854;  /* *fma_fmsubadd_v16sf_round */
    }
  goto ret0;

 L18641: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18642;
  goto ret0;

 L18642: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18643;
    }
  goto ret0;

 L18643: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1808;  /* *fma_fmaddsub_v16sf_round */
    }
  goto ret0;

 L46950: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16SFmode:
      goto L64212;
    case V8SFmode:
      goto L64213;
    default:
      break;
    }
 L47550: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PC)
    goto L47551;
  goto ret0;

 L64212: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L46951;
    }
  goto L47550;

 L46951: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, HImode))
    {
      operands[7] = x3;
      goto L46952;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46952: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L46953;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46953: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64214;
    case DImode:
      goto L64215;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L64214: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46954;
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46954: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L46955;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46955: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[3] = x5;
      goto L46956;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46956: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46957;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46957: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46958;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L46959;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46959: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4403;  /* *avx512f_gathersiv16sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L64215: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46979;
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46979: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L46980;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46980: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[3] = x5;
      goto L46981;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46981: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46982;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46982: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46983;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L46984;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L46984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4404;  /* *avx512f_gathersiv16sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L64213: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L48151;
    }
  goto L47550;

 L48151: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L48152;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L48153;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48153: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64216;
    case DImode:
      goto L64217;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L64216: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48154;
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48154: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48155;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48155: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48156;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48156: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48157;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48158;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48159;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48159: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4451;  /* *avx512f_gatherdiv16sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L64217: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48179;
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48179: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L48180;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48180: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48181;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48181: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48182;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48182: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48183;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48184;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L48184: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4452;  /* *avx512f_gatherdiv16sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47550;

 L47551: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L64218;
    case QImode:
      goto L64219;
    default:
      break;
    }
  goto ret0;

 L64218: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L47552;
    }
  goto ret0;

 L47552: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[5] = x3;
      goto L47553;
    }
  goto ret0;

 L47553: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64220;
    case DImode:
      goto L64221;
    default:
      break;
    }
  goto ret0;

 L64220: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47554;
  goto ret0;

 L47554: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47555;
    }
  goto ret0;

 L47555: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[2] = x5;
      goto L47556;
    }
  goto ret0;

 L47556: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47557;
    }
  goto ret0;

 L47557: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47558;
  goto ret0;

 L47558: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L47559;
    }
  goto ret0;

 L47559: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4427;  /* *avx512f_gathersiv16sf_2 */
    }
  goto ret0;

 L64221: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47579;
  goto ret0;

 L47579: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47580;
    }
  goto ret0;

 L47580: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[2] = x5;
      goto L47581;
    }
  goto ret0;

 L47581: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47582;
    }
  goto ret0;

 L47582: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47583;
  goto ret0;

 L47583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L47584;
    }
  goto ret0;

 L47584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4428;  /* *avx512f_gathersiv16sf_2 */
    }
  goto ret0;

 L64219: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L48752;
    }
  goto ret0;

 L48752: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[5] = x3;
      goto L48753;
    }
  goto ret0;

 L48753: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64222;
    case DImode:
      goto L64223;
    default:
      break;
    }
  goto ret0;

 L64222: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48754;
  goto ret0;

 L48754: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L48755;
    }
  goto ret0;

 L48755: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48756;
    }
  goto ret0;

 L48756: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48757;
    }
  goto ret0;

 L48757: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48758;
  goto ret0;

 L48758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48759;
    }
  goto ret0;

 L48759: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4475;  /* *avx512f_gatherdiv16sf_2 */
    }
  goto ret0;

 L64223: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48779;
  goto ret0;

 L48779: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L48780;
    }
  goto ret0;

 L48780: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48781;
    }
  goto ret0;

 L48781: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48782;
    }
  goto ret0;

 L48782: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48783;
  goto ret0;

 L48783: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48784;
    }
  goto ret0;

 L48784: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4476;  /* *avx512f_gatherdiv16sf_2 */
    }
  goto ret0;

 L50663: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L50664;
    }
  goto ret0;

 L50664: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L50665;
    }
  goto ret0;

 L50665: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50666;
    }
  goto ret0;

 L50666: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50667;
  goto ret0;

 L50667: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L50668;
    }
  goto ret0;

 L50668: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode))))
    {
      return 4582;  /* avx512dq_rangepv16sf_round */
    }
  goto ret0;

 L64199: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23791;
    case 82LL:
      goto L25107;
    case 161LL:
      goto L50952;
    default:
      break;
    }
  goto ret0;

 L23791: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L23792;
    }
  goto ret0;

 L23792: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L23793;
    }
  goto ret0;

 L23793: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23794;
  goto ret0;

 L23794: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23795;
    }
  goto ret0;

 L23795: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2333;  /* avx512f_scalefv16sf_round */
    }
  goto ret0;

 L25107: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L25108;
    }
  goto ret0;

 L25108: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25109;
    }
  goto ret0;

 L25109: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25110;
  goto ret0;

 L25110: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25111;
    }
  goto ret0;

 L25111: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2463;  /* avx512f_rndscalev16sf_round */
    }
  goto ret0;

 L50952: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L50953;
    }
  goto ret0;

 L50953: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L50954;
    }
  goto ret0;

 L50954: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50955;
  goto ret0;

 L50955: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50956;
    }
  goto ret0;

 L50956: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4616;  /* avx512f_getmantv16sf_round */
    }
  goto ret0;

 L64200: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 160LL:
      goto L24186;
    case 172LL:
      goto L39530;
    case 173LL:
      goto L39594;
    case 174LL:
      goto L39694;
    case 141LL:
      goto L44642;
    default:
      break;
    }
  goto ret0;

 L24186: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L24187;
    }
  goto ret0;

 L24187: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24188;
  goto ret0;

 L24188: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L24189;
    }
  goto ret0;

 L24189: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2375;  /* avx512f_getexpv16sf_round */
    }
  goto ret0;

 L39530: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L39531;
    }
  goto ret0;

 L39531: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39532;
  goto ret0;

 L39532: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39533;
    }
  goto ret0;

 L39533: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3732;  /* avx512er_exp2v16sf_round */
    }
  goto ret0;

 L39594: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L39595;
    }
  goto ret0;

 L39595: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39596;
  goto ret0;

 L39596: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39597;
    }
  goto ret0;

 L39597: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3740;  /* *avx512er_rcp28v16sf_round */
    }
  goto ret0;

 L39694: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L39695;
    }
  goto ret0;

 L39695: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39696;
  goto ret0;

 L39696: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39697;
    }
  goto ret0;

 L39697: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3752;  /* *avx512er_rsqrt28v16sf_round */
    }
  goto ret0;

 L44642: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16HImode))
    {
      operands[1] = x3;
      goto L44643;
    }
  goto ret0;

 L44643: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L44644;
  goto ret0;

 L44644: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L44645;
    }
  goto ret0;

 L44645: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4319;  /* *avx512f_vcvtph2ps512_round */
    }
  goto ret0;

 L64201: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24523;
  goto ret0;

 L24523: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L24524;
    }
  goto ret0;

 L24524: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L24525;
    }
  goto ret0;

 L24525: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L24526;
    }
  goto ret0;

 L24526: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24527;
    }
  goto ret0;

 L24527: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24528;
  goto ret0;

 L24528: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24529;
    }
  goto ret0;

 L24529: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2415;  /* avx512f_fixupimmv16sf_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_138 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (vsib_mem_operator (x2, V16SFmode))
    {
      operands[5] = x2;
      goto L49345;
    }
  if (register_operand (x2, V16SFmode))
    {
      operands[0] = x2;
      goto L12484;
    }
  goto ret0;

 L49345: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64078;
    case DImode:
      goto L64079;
    default:
      break;
    }
  goto ret0;

 L64078: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49346;
  goto ret0;

 L49346: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49347;
    }
  goto ret0;

 L49347: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V16SImode:
      goto L64080;
    case V8DImode:
      goto L64081;
    default:
      break;
    }
  goto ret0;

 L64080: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L49348;
    }
  goto ret0;

 L49348: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49349;
    }
  goto ret0;

 L49349: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49350;
  goto ret0;

 L49350: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L49351;
    }
  goto ret0;

 L49351: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L49352;
    }
  goto ret0;

 L49352: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49353;
  goto ret0;

 L49353: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L49354;
    }
  goto ret0;

 L49354: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4499;  /* *avx512f_scattersiv16sf */
    }
  goto ret0;

 L64081: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49900;
    }
  goto ret0;

 L49900: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49901;
    }
  goto ret0;

 L49901: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49902;
  goto ret0;

 L49902: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49903;
    }
  goto ret0;

 L49903: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L49904;
    }
  goto ret0;

 L49904: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49905;
  goto ret0;

 L49905: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49906;
    }
  goto ret0;

 L49906: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4523;  /* *avx512f_scatterdiv16sf */
    }
  goto ret0;

 L64079: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49369;
  goto ret0;

 L49369: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49370;
    }
  goto ret0;

 L49370: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V16SImode:
      goto L64082;
    case V8DImode:
      goto L64083;
    default:
      break;
    }
  goto ret0;

 L64082: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L49371;
    }
  goto ret0;

 L49371: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49372;
    }
  goto ret0;

 L49372: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49373;
  goto ret0;

 L49373: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L49374;
    }
  goto ret0;

 L49374: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L49375;
    }
  goto ret0;

 L49375: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49376;
  goto ret0;

 L49376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L49377;
    }
  goto ret0;

 L49377: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4500;  /* *avx512f_scattersiv16sf */
    }
  goto ret0;

 L64083: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49923;
    }
  goto ret0;

 L49923: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49924;
    }
  goto ret0;

 L49924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49925;
  goto ret0;

 L49925: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49926;
    }
  goto ret0;

 L49926: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L49927;
    }
  goto ret0;

 L49927: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49928;
  goto ret0;

 L49928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49929;
    }
  goto ret0;

 L49929: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4524;  /* *avx512f_scatterdiv16sf */
    }
  goto ret0;

 L12484: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SFmode)
    goto L64085;
  goto ret0;

 L64085: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L12539;
    case VEC_MERGE:
      goto L12557;
    case MINUS:
      goto L12575;
    case MULT:
      goto L13051;
    case DIV:
      goto L13347;
    case SQRT:
      goto L13587;
    case SMAX:
      goto L13849;
    case SMIN:
      goto L13885;
    case FMA:
      goto L16640;
    case UNSPEC:
      goto L64108;
    case FLOAT:
      goto L19964;
    case UNSIGNED_FLOAT:
      goto L20022;
    case NEG:
    case ABS:
      goto L64084;
    default:
      goto ret0;
   }
 L64084: ATTRIBUTE_UNUSED_LABEL
  if (absneg_operator (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L12485;
    }
  goto ret0;

 L12539: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L12540;
    }
  goto ret0;

 L12540: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L12541;
    }
  goto ret0;

 L12541: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12542;
  goto ret0;

 L12542: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12543;
    }
  goto ret0;

 L12543: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands) && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1165;  /* *addv16sf3_round */
    }
  goto ret0;

 L12557: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L64120;
  goto ret0;

 L64120: ATTRIBUTE_UNUSED_LABEL
  return recog_136 (x0, insn, pnum_clobbers);

 L12575: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L12576;
    }
  goto ret0;

 L12576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L12577;
    }
  goto ret0;

 L12577: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12578;
  goto ret0;

 L12578: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12579;
    }
  goto ret0;

 L12579: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands) && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1169;  /* *subv16sf3_round */
    }
  goto ret0;

 L13051: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13052;
    }
  goto ret0;

 L13052: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13053;
    }
  goto ret0;

 L13053: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13054;
  goto ret0;

 L13054: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13055;
    }
  goto ret0;

 L13055: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands) && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1221;  /* *mulv16sf3_round */
    }
  goto ret0;

 L13347: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13348;
    }
  goto ret0;

 L13348: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13349;
    }
  goto ret0;

 L13349: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13350;
  goto ret0;

 L13350: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13351;
    }
  goto ret0;

 L13351: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1253;  /* avx512f_divv16sf3_round */
    }
  goto ret0;

 L13587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13588;
    }
  goto ret0;

 L13588: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13589;
  goto ret0;

 L13589: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L13590;
    }
  goto ret0;

 L13590: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1286;  /* avx512f_sqrtv16sf2_round */
    }
  goto ret0;

 L13849: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13850;
    }
  goto ret0;

 L13850: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13851;
    }
  goto ret0;

 L13851: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13852;
  goto ret0;

 L13852: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13853;
    }
  goto ret0;

 L13853: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V16SFmode, operands)
   && 1 && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1323;  /* *smaxv16sf3_finite_round */
    }
 L14285: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1371;  /* *smaxv16sf3_round */
    }
  goto ret0;

 L13885: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L13886;
    }
  goto ret0;

 L13886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L13887;
    }
  goto ret0;

 L13887: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13888;
  goto ret0;

 L13888: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13889;
    }
  goto ret0;

 L13889: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V16SFmode, operands)
   && 1 && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1327;  /* *sminv16sf3_finite_round */
    }
 L14321: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1375;  /* *sminv16sf3_round */
    }
  goto ret0;

 L16640: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SFmode)
    goto L64193;
  goto ret0;

 L64193: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17549;
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L16641;
    }
  goto ret0;

 L17549: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L17550;
    }
  goto ret0;

 L17550: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L17551;
    }
  goto ret0;

 L17551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L64195;
  goto ret0;

 L64195: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18156;
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L17552;
    }
  goto ret0;

 L18156: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L18157;
    }
  goto ret0;

 L18157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18158;
  goto ret0;

 L18158: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18159;
    }
  goto ret0;

 L18159: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1766;  /* *fma_fnmsub_v16sf_round */
    }
  goto ret0;

 L17552: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17553;
  goto ret0;

 L17553: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17554;
    }
  goto ret0;

 L17554: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1712;  /* *fma_fnmadd_v16sf_round */
    }
  goto ret0;

 L16641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L16642;
    }
  goto ret0;

 L16642: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V16SFmode)
    goto L64197;
  goto ret0;

 L64197: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17079;
  if (register_operand (x3, V16SFmode))
    {
      operands[3] = x3;
      goto L16643;
    }
  goto ret0;

 L17079: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[3] = x4;
      goto L17080;
    }
  goto ret0;

 L17080: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17081;
  goto ret0;

 L17081: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17082;
    }
  goto ret0;

 L17082: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1668;  /* *fma_fmsub_v16sf_round */
    }
  goto ret0;

 L16643: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16644;
  goto ret0;

 L16644: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L16645;
    }
  goto ret0;

 L16645: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode))))
    {
      return 1624;  /* *fma_fmadd_v16sf_round */
    }
  goto ret0;

 L64108: ATTRIBUTE_UNUSED_LABEL
  return recog_137 (x0, insn, pnum_clobbers);

 L19964: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L19965;
    }
  goto ret0;

 L19965: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19966;
  goto ret0;

 L19966: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L19967;
    }
  goto ret0;

 L19967: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4007 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && 1 && (V16SFmode == V16SFmode
							      || V16SFmode == V8DFmode
							      || V16SFmode == V8DImode
							      || V16SFmode == V16SImode)) && 
#line 226 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1932;  /* floatv16siv16sf2_round */
    }
  goto ret0;

 L20022: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L20023;
    }
  goto ret0;

 L20023: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20024;
  goto ret0;

 L20024: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20025;
    }
  goto ret0;

 L20025: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1940;  /* ufloatv16siv16sf2_round */
    }
  goto ret0;

 L12485: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L12486;
    }
  goto ret0;

 L12486: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L12487;
  goto ret0;

 L12487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L12488;
    }
  goto ret0;

 L12488: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1158;  /* *absnegv16sf2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_139 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L12630;
    case MINUS:
      goto L12666;
    case MULT:
      goto L13106;
    case SMAX:
      goto L13940;
    case SMIN:
      goto L13976;
    case FMA:
      goto L16908;
    case UNSPEC:
      goto L64270;
    case UNSIGNED_FLOAT:
      goto L20071;
    case FLOAT:
      goto L20863;
    case FLOAT_TRUNCATE:
      goto L21809;
    default:
     break;
   }
  goto ret0;

 L12630: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L12631;
    }
  goto ret0;

 L12631: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L12632;
    }
  goto ret0;

 L12632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L12633;
    }
  goto ret0;

 L12633: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12634;
    }
  goto ret0;

 L12634: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12635;
  goto ret0;

 L12635: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12636;
    }
  goto ret0;

 L12636: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands) && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
							      || V8SFmode == V8DFmode
							      || V8SFmode == V8DImode
							      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1175;  /* *addv8sf3_mask_round */
    }
  goto ret0;

 L12666: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L12667;
    }
  goto ret0;

 L12667: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L12668;
    }
  goto ret0;

 L12668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L12669;
    }
  goto ret0;

 L12669: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12670;
    }
  goto ret0;

 L12670: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12671;
  goto ret0;

 L12671: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12672;
    }
  goto ret0;

 L12672: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands) && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
							      || V8SFmode == V8DFmode
							      || V8SFmode == V8DImode
							      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1179;  /* *subv8sf3_mask_round */
    }
  goto ret0;

 L13106: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L13107;
    }
  goto ret0;

 L13107: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L13108;
    }
  goto ret0;

 L13108: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L13109;
    }
  goto ret0;

 L13109: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13110;
    }
  goto ret0;

 L13110: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13111;
  goto ret0;

 L13111: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13112;
    }
  goto ret0;

 L13112: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands) && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
							      || V8SFmode == V8DFmode
							      || V8SFmode == V8DImode
							      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1227;  /* *mulv8sf3_mask_round */
    }
  goto ret0;

 L13940: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L13941;
    }
  goto ret0;

 L13941: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L13942;
    }
  goto ret0;

 L13942: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L13943;
    }
  goto ret0;

 L13943: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13944;
    }
  goto ret0;

 L13944: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13945;
  goto ret0;

 L13945: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13946;
    }
  goto ret0;

 L13946: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8SFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
									      || V8SFmode == V8DFmode
									      || V8SFmode == V8DImode
									      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1333;  /* *smaxv8sf3_finite_mask_round */
    }
  goto ret0;

 L13976: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L13977;
    }
  goto ret0;

 L13977: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L13978;
    }
  goto ret0;

 L13978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L13979;
    }
  goto ret0;

 L13979: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13980;
    }
  goto ret0;

 L13980: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13981;
  goto ret0;

 L13981: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13982;
    }
  goto ret0;

 L13982: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8SFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
									      || V8SFmode == V8DFmode
									      || V8SFmode == V8DImode
									      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1337;  /* *sminv8sf3_finite_mask_round */
    }
  goto ret0;

 L16908: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8SFmode)
    goto L64277;
  goto ret0;

 L64277: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18073;
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L16909;
    }
  goto ret0;

 L18073: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8SFmode)
    goto L64278;
  goto ret0;

 L64278: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V8SFmode))
    {
      operands[1] = x5;
      goto L18074;
    }
 L64279: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SFmode))
    {
      operands[1] = x5;
      goto L18476;
    }
  goto ret0;

 L18074: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L18075;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18075: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8SFmode
      && GET_CODE (x4) == NEG)
    goto L18076;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18076: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8SFmode))
    {
      operands[3] = x5;
      goto L18077;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18077: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8SFmode))
    {
      operands[4] = x3;
      goto L18078;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L18079;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18079: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18080;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18080: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18081;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18081: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1759;  /* *fma_fnmsub_v8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64279;

 L18476: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L18477;
    }
  goto ret0;

 L18477: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8SFmode
      && GET_CODE (x4) == NEG)
    goto L18478;
  goto ret0;

 L18478: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V8SFmode))
    {
      operands[3] = x5;
      goto L18479;
    }
  goto ret0;

 L18479: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18480;
  goto ret0;

 L18480: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18481;
    }
  goto ret0;

 L18481: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18482;
  goto ret0;

 L18482: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18483;
    }
  goto ret0;

 L18483: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1793;  /* avx512vl_fnmsub_v8sf_mask3_round */
    }
  goto ret0;

 L16909: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L16910;
    }
  goto ret0;

 L16910: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8SFmode)
    goto L64281;
  goto ret0;

 L64281: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17280;
  if (register_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L16911;
    }
  goto ret0;

 L17280: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V8SFmode))
    {
      operands[3] = x5;
      goto L17281;
    }
  goto ret0;

 L17281: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17282;
  goto ret0;

 L17282: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17283;
    }
  goto ret0;

 L17283: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17284;
  goto ret0;

 L17284: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17285;
    }
  goto ret0;

 L17285: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1687;  /* avx512vl_fmsub_v8sf_mask_round */
    }
  goto ret0;

 L16911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L16912;
  goto ret0;

 L16912: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L16913;
    }
  goto ret0;

 L16913: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16914;
  goto ret0;

 L16914: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16915;
    }
  goto ret0;

 L16915: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1651;  /* avx512vl_fmadd_v8sf_mask3_round */
    }
  goto ret0;

 L64270: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x3, 0))
    {
    case 3:
      goto L64282;
    case 2:
      goto L64283;
    case 1:
      goto L64284;
    case 4:
      goto L64285;
    default:
      break;
    }
  goto ret0;

 L64282: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 123)
    goto L18820;
  goto ret0;

 L18820: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L18821;
    }
  goto ret0;

 L18821: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L18822;
    }
  goto ret0;

 L18822: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V8SFmode)
    goto L64290;
  goto ret0;

 L64290: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19314;
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L18823;
    }
 L64289: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L18961;
    }
  goto ret0;

 L19314: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8SFmode)
    goto L64291;
  goto ret0;

 L64291: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V8SFmode))
    {
      operands[3] = x5;
      goto L19315;
    }
 L64292: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SFmode))
    {
      operands[3] = x5;
      goto L19465;
    }
  goto ret0;

 L19315: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19316;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64292;

 L19316: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19317;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64292;

 L19317: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19318;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64292;

 L19318: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19319;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64292;

 L19319: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1873;  /* avx512vl_fmsubadd_v8sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64292;

 L19465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19466;
  goto ret0;

 L19466: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19467;
    }
  goto ret0;

 L19467: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19468;
  goto ret0;

 L19468: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19469;
    }
  goto ret0;

 L19469: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1885;  /* avx512vl_fmsubadd_v8sf_mask3_round */
    }
  goto ret0;

 L18823: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18824;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64289;

 L18824: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18825;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64289;

 L18825: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18826;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64289;

 L18826: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18827;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64289;

 L18827: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1827;  /* avx512vl_fmaddsub_v8sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64289;

 L18961: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18962;
  goto ret0;

 L18962: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18963;
    }
  goto ret0;

 L18963: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18964;
  goto ret0;

 L18964: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18965;
    }
  goto ret0;

 L18965: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1839;  /* avx512vl_fmaddsub_v8sf_mask3_round */
    }
  goto ret0;

 L64283: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 158LL:
      goto L23846;
    case 82LL:
      goto L25162;
    case 161LL:
      goto L51007;
    default:
      break;
    }
  goto ret0;

 L23846: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L23847;
    }
  goto ret0;

 L23847: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L23848;
    }
  goto ret0;

 L23848: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L23849;
    }
  goto ret0;

 L23849: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L23850;
    }
  goto ret0;

 L23850: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23851;
  goto ret0;

 L23851: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L23852;
    }
  goto ret0;

 L23852: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2339;  /* avx512vl_scalefv8sf_mask_round */
    }
  goto ret0;

 L25162: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L25163;
    }
  goto ret0;

 L25163: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L25164;
    }
  goto ret0;

 L25164: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L25165;
    }
  goto ret0;

 L25165: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L25166;
    }
  goto ret0;

 L25166: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25167;
  goto ret0;

 L25167: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25168;
    }
  goto ret0;

 L25168: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2469;  /* avx512vl_rndscalev8sf_mask_round */
    }
  goto ret0;

 L51007: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L51008;
    }
  goto ret0;

 L51008: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L51009;
    }
  goto ret0;

 L51009: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L51010;
    }
  goto ret0;

 L51010: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L51011;
    }
  goto ret0;

 L51011: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51012;
  goto ret0;

 L51012: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L51013;
    }
  goto ret0;

 L51013: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 4622;  /* avx512vl_getmantv8sf_mask_round */
    }
  goto ret0;

 L64284: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 160)
    goto L24235;
  goto ret0;

 L24235: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L24236;
    }
  goto ret0;

 L24236: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L24237;
    }
  goto ret0;

 L24237: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L24238;
    }
  goto ret0;

 L24238: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24239;
  goto ret0;

 L24239: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24240;
    }
  goto ret0;

 L24240: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2381;  /* avx512vl_getexpv8sf_mask_round */
    }
  goto ret0;

 L64285: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 157)
    goto L24590;
  goto ret0;

 L24590: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L24591;
    }
  goto ret0;

 L24591: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8SFmode))
    {
      operands[2] = x4;
      goto L24592;
    }
  goto ret0;

 L24592: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[3] = x4;
      goto L24593;
    }
  goto ret0;

 L24593: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24594;
    }
  goto ret0;

 L24594: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8SFmode))
    {
      operands[5] = x3;
      goto L24595;
    }
 L24820: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L24821;
  goto ret0;

 L24595: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L24596;
    }
  x3 = XEXP (x2, 1);
  goto L24820;

 L24596: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24597;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24820;

 L24597: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24598;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24820;

 L24598: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2421;  /* avx512vl_fixupimmv8sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24820;

 L24821: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L24822;
    }
  goto ret0;

 L24822: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24823;
  goto ret0;

 L24823: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L24824;
    }
  goto ret0;

 L24824: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2441;  /* avx512vl_fixupimmv8sf_mask_round */
    }
  goto ret0;

 L20071: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64293;
    case V8DImode:
      goto L64294;
    default:
      break;
    }
  goto ret0;

 L64293: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SImode))
    {
      operands[1] = x4;
      goto L20072;
    }
  goto ret0;

 L20072: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L20073;
    }
  goto ret0;

 L20073: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20074;
    }
  goto ret0;

 L20074: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20075;
  goto ret0;

 L20075: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20076;
    }
  goto ret0;

 L20076: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 1946;  /* ufloatv8siv8sf2_mask_round */
    }
  goto ret0;

 L64294: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L20896;
    }
  goto ret0;

 L20896: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L20897;
    }
  goto ret0;

 L20897: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20898;
    }
  goto ret0;

 L20898: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20899;
  goto ret0;

 L20899: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20900;
    }
  goto ret0;

 L20900: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode)))))
    {
      return 2051;  /* ufloatv8div8sf2_mask_round */
    }
  goto ret0;

 L20863: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L20864;
    }
  goto ret0;

 L20864: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L20865;
    }
  goto ret0;

 L20865: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20866;
    }
  goto ret0;

 L20866: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20867;
  goto ret0;

 L20867: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20868;
    }
  goto ret0;

 L20868: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode)))))
    {
      return 2047;  /* floatv8div8sf2_mask_round */
    }
  goto ret0;

 L21809: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21810;
    }
  goto ret0;

 L21810: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L21811;
    }
  goto ret0;

 L21811: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21812;
    }
  goto ret0;

 L21812: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21813;
  goto ret0;

 L21813: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21814;
    }
  goto ret0;

 L21814: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2164;  /* avx512f_cvtpd2ps512_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_140 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XINT (x2, 1))
    {
    case 157LL:
      goto L24567;
    case 145LL:
      goto L45130;
    default:
      break;
    }
  goto ret0;

 L24567: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L24568;
    }
  goto ret0;

 L24568: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L24569;
    }
  goto ret0;

 L24569: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L24570;
    }
  goto ret0;

 L24570: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24571;
    }
  goto ret0;

 L24571: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24572;
  goto ret0;

 L24572: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24573;
    }
  goto ret0;

 L24573: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2419;  /* avx512vl_fixupimmv8sf_round */
    }
  goto ret0;

 L45130: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L64304;
    case V4SFmode:
      goto L64305;
    default:
      break;
    }
 L45594: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PC)
    goto L45595;
  goto ret0;

 L64304: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L45131;
    }
  goto L45594;

 L45131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[7] = x3;
      goto L45132;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45132: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64306;
    case DImode:
      goto L64307;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L64306: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45133;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45133: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L45134;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45134: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[4] = x5;
      goto L45135;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45135: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45136;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45136: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45137;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45137: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45138;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45138: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SFmode))
    {
      operands[5] = x3;
      goto L45139;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45139: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45140;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45140: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L45141;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45141: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4343;  /* *avx2_gathersiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L64307: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45162;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45162: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L45163;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45163: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[4] = x5;
      goto L45164;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45164: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45165;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45165: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45166;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45166: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45167;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45167: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SFmode))
    {
      operands[5] = x3;
      goto L45168;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45168: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45169;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L45170;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4344;  /* *avx2_gathersiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L64305: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L46059;
    }
  goto L45594;

 L46059: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[7] = x3;
      goto L46060;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46060: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64308;
    case DImode:
      goto L64309;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L64308: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46061;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46061: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L46062;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46062: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46063;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46063: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46064;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46064: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46065;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46065: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46066;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46066: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L46067;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46067: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46068;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46068: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46069;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46069: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4375;  /* *avx2_gatherdiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L64309: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46090;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46090: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L46091;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46091: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46092;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46092: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46093;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46093: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46094;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46094: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46095;
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46095: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L46096;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46096: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46097;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46097: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46098;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L46098: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4376;  /* *avx2_gatherdiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45594;

 L45595: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L45596;
    }
  goto ret0;

 L45596: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64310;
    case DImode:
      goto L64311;
    default:
      break;
    }
  goto ret0;

 L64310: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45597;
  goto ret0;

 L45597: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45598;
    }
  goto ret0;

 L45598: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64312;
    case V4DImode:
      goto L64313;
    default:
      break;
    }
  goto ret0;

 L64312: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L45599;
    }
  goto ret0;

 L45599: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45600;
    }
  goto ret0;

 L45600: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45601;
  goto ret0;

 L45601: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45602;
  goto ret0;

 L45602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SFmode))
    {
      operands[4] = x3;
      goto L45603;
    }
  goto ret0;

 L45603: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45604;
  goto ret0;

 L45604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L45605;
    }
  goto ret0;

 L45605: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4359;  /* *avx2_gathersiv8sf_2 */
    }
  goto ret0;

 L64313: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46527;
    }
  goto ret0;

 L46527: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46528;
    }
  goto ret0;

 L46528: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46529;
  goto ret0;

 L46529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46530;
  goto ret0;

 L46530: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L46531;
    }
  goto ret0;

 L46531: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46532;
  goto ret0;

 L46532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46533;
    }
  goto ret0;

 L46533: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4391;  /* *avx2_gatherdiv8sf_2 */
    }
  goto ret0;

 L64311: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45626;
  goto ret0;

 L45626: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45627;
    }
  goto ret0;

 L45627: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64314;
    case V4DImode:
      goto L64315;
    default:
      break;
    }
  goto ret0;

 L64314: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L45628;
    }
  goto ret0;

 L45628: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45629;
    }
  goto ret0;

 L45629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45630;
  goto ret0;

 L45630: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45631;
  goto ret0;

 L45631: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SFmode))
    {
      operands[4] = x3;
      goto L45632;
    }
  goto ret0;

 L45632: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45633;
  goto ret0;

 L45633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L45634;
    }
  goto ret0;

 L45634: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4360;  /* *avx2_gathersiv8sf_2 */
    }
  goto ret0;

 L64315: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46556;
    }
  goto ret0;

 L46556: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46557;
    }
  goto ret0;

 L46557: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46558;
  goto ret0;

 L46558: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46559;
  goto ret0;

 L46559: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L46560;
    }
  goto ret0;

 L46560: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46561;
  goto ret0;

 L46561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46562;
    }
  goto ret0;

 L46562: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4392;  /* *avx2_gatherdiv8sf_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_141 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L64297;
    case 1:
      goto L64298;
    case 4:
      goto L64299;
    case 3:
      goto L64302;
    default:
      break;
    }
  goto ret0;

 L64297: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23827;
    case 82LL:
      goto L25143;
    case 161LL:
      goto L50988;
    default:
      break;
    }
  goto ret0;

 L23827: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L23828;
    }
  goto ret0;

 L23828: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L23829;
    }
  goto ret0;

 L23829: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23830;
  goto ret0;

 L23830: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23831;
    }
  goto ret0;

 L23831: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2337;  /* avx512vl_scalefv8sf_round */
    }
  goto ret0;

 L25143: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L25144;
    }
  goto ret0;

 L25144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25145;
    }
  goto ret0;

 L25145: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25146;
  goto ret0;

 L25146: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25147;
    }
  goto ret0;

 L25147: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2467;  /* avx512vl_rndscalev8sf_round */
    }
  goto ret0;

 L50988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L50989;
    }
  goto ret0;

 L50989: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L50990;
    }
  goto ret0;

 L50990: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50991;
  goto ret0;

 L50991: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L50992;
    }
  goto ret0;

 L50992: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4620;  /* avx512vl_getmantv8sf_round */
    }
  goto ret0;

 L64298: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 160)
    goto L24218;
  goto ret0;

 L24218: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L24219;
    }
  goto ret0;

 L24219: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24220;
  goto ret0;

 L24220: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L24221;
    }
  goto ret0;

 L24221: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2379;  /* avx512vl_getexpv8sf_round */
    }
  goto ret0;

 L64299: ATTRIBUTE_UNUSED_LABEL
  return recog_140 (x0, insn, pnum_clobbers);

 L64302: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47150;
  goto ret0;

 L47150: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L64316;
    case V4SFmode:
      goto L64317;
    default:
      break;
    }
 L47750: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PC)
    goto L47751;
  goto ret0;

 L64316: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L47151;
    }
  goto L47750;

 L47151: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47152;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L47153;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47153: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64318;
    case DImode:
      goto L64319;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L64318: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47154;
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47154: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47155;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47155: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47156;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47156: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47157;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47158;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47159;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47159: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4411;  /* *avx512f_gathersiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L64319: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47179;
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47179: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47180;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47180: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47181;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47181: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47182;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47182: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47183;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47184;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47184: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4412;  /* *avx512f_gathersiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L64317: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L48351;
    }
  goto L47750;

 L48351: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L48352;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48352: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L48353;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48353: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64320;
    case DImode:
      goto L64321;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L64320: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48354;
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48354: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48355;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48355: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48356;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48356: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48357;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48358;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48359;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48359: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4459;  /* *avx512f_gatherdiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L64321: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48379;
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48379: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L48380;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48380: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48381;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48381: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48382;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48382: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48383;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48383: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48384;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L48384: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4460;  /* *avx512f_gatherdiv8sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47750;

 L47751: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47752;
    }
  goto ret0;

 L47752: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[5] = x3;
      goto L47753;
    }
  goto ret0;

 L47753: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64322;
    case DImode:
      goto L64323;
    default:
      break;
    }
  goto ret0;

 L64322: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47754;
  goto ret0;

 L47754: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47755;
    }
  goto ret0;

 L47755: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64324;
    case V4DImode:
      goto L64325;
    default:
      break;
    }
  goto ret0;

 L64324: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47756;
    }
  goto ret0;

 L47756: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47757;
    }
  goto ret0;

 L47757: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47758;
  goto ret0;

 L47758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47759;
    }
  goto ret0;

 L47759: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4435;  /* *avx512f_gathersiv8sf_2 */
    }
  goto ret0;

 L64325: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L48956;
    }
  goto ret0;

 L48956: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48957;
    }
  goto ret0;

 L48957: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48958;
  goto ret0;

 L48958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48959;
    }
  goto ret0;

 L48959: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4483;  /* *avx512f_gatherdiv8sf_2 */
    }
  goto ret0;

 L64323: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47779;
  goto ret0;

 L47779: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47780;
    }
  goto ret0;

 L47780: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64326;
    case V4DImode:
      goto L64327;
    default:
      break;
    }
  goto ret0;

 L64326: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47781;
    }
  goto ret0;

 L47781: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47782;
    }
  goto ret0;

 L47782: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47783;
  goto ret0;

 L47783: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47784;
    }
  goto ret0;

 L47784: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4436;  /* *avx512f_gathersiv8sf_2 */
    }
  goto ret0;

 L64327: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L48981;
    }
  goto ret0;

 L48981: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48982;
    }
  goto ret0;

 L48982: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48983;
  goto ret0;

 L48983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48984;
    }
  goto ret0;

 L48984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4484;  /* *avx512f_gatherdiv8sf_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_142 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (vsib_mem_operator (x2, V8SFmode))
    {
      operands[5] = x2;
      goto L49529;
    }
  if (register_operand (x2, V8SFmode))
    {
      operands[0] = x2;
      goto L12492;
    }
  goto ret0;

 L49529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64224;
    case DImode:
      goto L64225;
    default:
      break;
    }
  goto ret0;

 L64224: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49530;
  goto ret0;

 L49530: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49531;
    }
  goto ret0;

 L49531: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64226;
    case V4DImode:
      goto L64227;
    default:
      break;
    }
  goto ret0;

 L64226: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49532;
    }
  goto ret0;

 L49532: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49533;
    }
  goto ret0;

 L49533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49534;
  goto ret0;

 L49534: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49535;
    }
  goto ret0;

 L49535: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L49536;
    }
  goto ret0;

 L49536: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49537;
  goto ret0;

 L49537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49538;
    }
  goto ret0;

 L49538: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4507;  /* *avx512f_scattersiv8sf */
    }
  goto ret0;

 L64227: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50084;
    }
  goto ret0;

 L50084: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50085;
    }
  goto ret0;

 L50085: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50086;
  goto ret0;

 L50086: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50087;
    }
  goto ret0;

 L50087: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L50088;
    }
  goto ret0;

 L50088: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50089;
  goto ret0;

 L50089: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50090;
    }
  goto ret0;

 L50090: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4531;  /* *avx512f_scatterdiv8sf */
    }
  goto ret0;

 L64225: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49553;
  goto ret0;

 L49553: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49554;
    }
  goto ret0;

 L49554: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64228;
    case V4DImode:
      goto L64229;
    default:
      break;
    }
  goto ret0;

 L64228: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49555;
    }
  goto ret0;

 L49555: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49556;
    }
  goto ret0;

 L49556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49557;
  goto ret0;

 L49557: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49558;
    }
  goto ret0;

 L49558: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[3] = x3;
      goto L49559;
    }
  goto ret0;

 L49559: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49560;
  goto ret0;

 L49560: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49561;
    }
  goto ret0;

 L49561: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4508;  /* *avx512f_scattersiv8sf */
    }
  goto ret0;

 L64229: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50107;
    }
  goto ret0;

 L50107: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50108;
    }
  goto ret0;

 L50108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50109;
  goto ret0;

 L50109: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50110;
    }
  goto ret0;

 L50110: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L50111;
    }
  goto ret0;

 L50111: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50112;
  goto ret0;

 L50112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50113;
    }
  goto ret0;

 L50113: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4532;  /* *avx512f_scatterdiv8sf */
    }
  goto ret0;

 L12492: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SFmode)
    goto L64231;
  goto ret0;

 L64231: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L12611;
    case VEC_MERGE:
      goto L12629;
    case MINUS:
      goto L12647;
    case MULT:
      goto L13087;
    case SMAX:
      goto L13921;
    case SMIN:
      goto L13957;
    case FMA:
      goto L18047;
    case UNSIGNED_FLOAT:
      goto L20054;
    case FLOAT:
      goto L20846;
    case FLOAT_TRUNCATE:
      goto L21792;
    case UNSPEC:
      goto L64248;
    case NEG:
    case ABS:
      goto L64230;
    default:
      goto ret0;
   }
 L64230: ATTRIBUTE_UNUSED_LABEL
  if (absneg_operator (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L12493;
    }
  goto ret0;

 L12611: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L12612;
    }
  goto ret0;

 L12612: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L12613;
    }
  goto ret0;

 L12613: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12614;
  goto ret0;

 L12614: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12615;
    }
  goto ret0;

 L12615: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands) && 1 && (V8SFmode == V16SFmode
							      || V8SFmode == V8DFmode
							      || V8SFmode == V8DImode
							      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1173;  /* *addv8sf3_round */
    }
  goto ret0;

 L12629: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode)
    goto L64255;
  goto ret0;

 L64255: ATTRIBUTE_UNUSED_LABEL
  return recog_139 (x0, insn, pnum_clobbers);

 L12647: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L12648;
    }
  goto ret0;

 L12648: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L12649;
    }
  goto ret0;

 L12649: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12650;
  goto ret0;

 L12650: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12651;
    }
  goto ret0;

 L12651: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands) && 1 && (V8SFmode == V16SFmode
							      || V8SFmode == V8DFmode
							      || V8SFmode == V8DImode
							      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1177;  /* *subv8sf3_round */
    }
  goto ret0;

 L13087: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13088;
    }
  goto ret0;

 L13088: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13089;
    }
  goto ret0;

 L13089: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13090;
  goto ret0;

 L13090: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13091;
    }
  goto ret0;

 L13091: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands) && 1 && (V8SFmode == V16SFmode
							      || V8SFmode == V8DFmode
							      || V8SFmode == V8DImode
							      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1225;  /* *mulv8sf3_round */
    }
  goto ret0;

 L13921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13922;
    }
  goto ret0;

 L13922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13923;
    }
  goto ret0;

 L13923: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13924;
  goto ret0;

 L13924: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13925;
    }
  goto ret0;

 L13925: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8SFmode, operands)
   && 1 && (V8SFmode == V16SFmode
									      || V8SFmode == V8DFmode
									      || V8SFmode == V8DImode
									      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1331;  /* *smaxv8sf3_finite_round */
    }
  goto ret0;

 L13957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L13958;
    }
  goto ret0;

 L13958: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L13959;
    }
  goto ret0;

 L13959: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13960;
  goto ret0;

 L13960: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13961;
    }
  goto ret0;

 L13961: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8SFmode, operands)
   && 1 && (V8SFmode == V16SFmode
									      || V8SFmode == V8DFmode
									      || V8SFmode == V8DImode
									      || V8SFmode == V16SImode)) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1335;  /* *sminv8sf3_finite_round */
    }
  goto ret0;

 L18047: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode
      && GET_CODE (x3) == NEG)
    goto L18048;
  goto ret0;

 L18048: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L18049;
    }
  goto ret0;

 L18049: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[2] = x3;
      goto L18050;
    }
  goto ret0;

 L18050: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8SFmode
      && GET_CODE (x3) == NEG)
    goto L18051;
  goto ret0;

 L18051: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[3] = x4;
      goto L18052;
    }
  goto ret0;

 L18052: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18053;
  goto ret0;

 L18053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18054;
    }
  goto ret0;

 L18054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1757;  /* *fma_fnmsub_v8sf */
    }
  goto ret0;

 L20054: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L64295;
    case V8DImode:
      goto L64296;
    default:
      break;
    }
  goto ret0;

 L64295: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L20055;
    }
  goto ret0;

 L20055: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20056;
  goto ret0;

 L20056: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20057;
    }
  goto ret0;

 L20057: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1944;  /* ufloatv8siv8sf2_round */
    }
  goto ret0;

 L64296: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20879;
    }
  goto ret0;

 L20879: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20880;
  goto ret0;

 L20880: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20881;
    }
  goto ret0;

 L20881: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode))))
    {
      return 2049;  /* ufloatv8div8sf2_round */
    }
  goto ret0;

 L20846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20847;
    }
  goto ret0;

 L20847: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20848;
  goto ret0;

 L20848: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20849;
    }
  goto ret0;

 L20849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4511 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode))))
    {
      return 2045;  /* floatv8div8sf2_round */
    }
  goto ret0;

 L21792: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21793;
    }
  goto ret0;

 L21793: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21794;
  goto ret0;

 L21794: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21795;
    }
  goto ret0;

 L21795: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2162;  /* *avx512f_cvtpd2ps512_round */
    }
  goto ret0;

 L64248: ATTRIBUTE_UNUSED_LABEL
  return recog_141 (x0, insn, pnum_clobbers);

 L12493: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L12494;
    }
  goto ret0;

 L12494: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L12495;
  goto ret0;

 L12495: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L12496;
    }
  goto ret0;

 L12496: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1159;  /* *absnegv8sf2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_143 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (XVECLEN (x3, 0))
    {
    case 3:
      goto L64416;
    case 2:
      goto L64417;
    case 1:
      goto L64418;
    case 4:
      goto L64420;
    default:
      break;
    }
  goto ret0;

 L64416: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 123LL:
      goto L18843;
    case 82LL:
      goto L25327;
    case 190LL:
      goto L50814;
    case 161LL:
      goto L51172;
    default:
      break;
    }
  goto ret0;

 L18843: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L18844;
    }
  goto ret0;

 L18844: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L18845;
    }
  goto ret0;

 L18845: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V4SFmode)
    goto L64430;
  goto ret0;

 L64430: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19339;
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L18846;
    }
 L64429: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L18984;
    }
  goto ret0;

 L19339: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4SFmode)
    goto L64431;
  goto ret0;

 L64431: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L19340;
    }
 L64432: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L19490;
    }
  goto ret0;

 L19340: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19341;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64432;

 L19341: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19342;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64432;

 L19342: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19343;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64432;

 L19343: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19344;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64432;

 L19344: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1875;  /* avx512vl_fmsubadd_v4sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64432;

 L19490: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19491;
  goto ret0;

 L19491: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19492;
    }
  goto ret0;

 L19492: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19493;
  goto ret0;

 L19493: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19494;
    }
  goto ret0;

 L19494: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1887;  /* avx512vl_fmsubadd_v4sf_mask3_round */
    }
  goto ret0;

 L18846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18847;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64429;

 L18847: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18848;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64429;

 L18848: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18849;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64429;

 L18849: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18850;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64429;

 L18850: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1829;  /* avx512vl_fmaddsub_v4sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64429;

 L18984: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18985;
  goto ret0;

 L18985: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18986;
    }
  goto ret0;

 L18986: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18987;
  goto ret0;

 L18987: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18988;
    }
  goto ret0;

 L18988: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1841;  /* avx512vl_fmaddsub_v4sf_mask3_round */
    }
  goto ret0;

 L25327: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L25328;
    }
  goto ret0;

 L25328: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L25329;
    }
  goto ret0;

 L25329: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L25330;
    }
  goto ret0;

 L25330: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L25331;
  goto ret0;

 L25331: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L25332;
  goto ret0;

 L25332: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25333;
  goto ret0;

 L25333: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L25334;
    }
  goto ret0;

 L25334: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2487;  /* avx512f_rndscalev4sf_round */
    }
  goto ret0;

 L50814: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L50815;
    }
  goto ret0;

 L50815: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L50816;
    }
  goto ret0;

 L50816: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L50817;
    }
  goto ret0;

 L50817: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L50818;
  goto ret0;

 L50818: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L50819;
  goto ret0;

 L50819: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50820;
  goto ret0;

 L50820: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L50821;
    }
  goto ret0;

 L50821: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18429 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 4598;  /* avx512dq_rangesv4sf_round */
    }
  goto ret0;

 L51172: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L51173;
    }
  goto ret0;

 L51173: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L51174;
    }
  goto ret0;

 L51174: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L51175;
    }
  goto ret0;

 L51175: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L51176;
  goto ret0;

 L51176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L51177;
  goto ret0;

 L51177: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51178;
  goto ret0;

 L51178: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L51179;
    }
  goto ret0;

 L51179: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4640;  /* avx512f_vgetmantv4sf_round */
    }
  goto ret0;

 L64417: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 158LL:
      goto L23754;
    case 160LL:
      goto L24382;
    case 82LL:
      goto L25198;
    case 161LL:
      goto L51043;
    default:
      break;
    }
  goto ret0;

 L23754: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L23755;
    }
  goto ret0;

 L23755: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64433;
  goto ret0;

 L64433: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L23756;
    }
 L64434: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L23884;
    }
  goto ret0;

 L23756: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L23757;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64434;

 L23757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23758;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64434;

 L23758: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23759;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64434;

 L23759: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23760;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64434;

 L23760: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2329;  /* avx512f_vmscalefv4sf_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64434;

 L23884: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L23885;
    }
  goto ret0;

 L23885: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L23886;
    }
  goto ret0;

 L23886: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23887;
  goto ret0;

 L23887: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L23888;
    }
  goto ret0;

 L23888: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2343;  /* avx512vl_scalefv4sf_mask_round */
    }
  goto ret0;

 L24382: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L24383;
    }
  goto ret0;

 L24383: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L24384;
    }
  goto ret0;

 L24384: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L24385;
  goto ret0;

 L24385: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L24386;
  goto ret0;

 L24386: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24387;
  goto ret0;

 L24387: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24388;
    }
  goto ret0;

 L24388: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2399;  /* avx512f_sgetexpv4sf_round */
    }
  goto ret0;

 L25198: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L25199;
    }
  goto ret0;

 L25199: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L25200;
    }
  goto ret0;

 L25200: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L25201;
    }
  goto ret0;

 L25201: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L25202;
    }
  goto ret0;

 L25202: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25203;
  goto ret0;

 L25203: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25204;
    }
  goto ret0;

 L25204: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2473;  /* avx512vl_rndscalev4sf_mask_round */
    }
  goto ret0;

 L51043: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L51044;
    }
  goto ret0;

 L51044: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L51045;
    }
  goto ret0;

 L51045: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L51046;
    }
  goto ret0;

 L51046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L51047;
    }
  goto ret0;

 L51047: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51048;
  goto ret0;

 L51048: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L51049;
    }
  goto ret0;

 L51049: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 4626;  /* avx512vl_getmantv4sf_mask_round */
    }
  goto ret0;

 L64418: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 160LL:
      goto L24267;
    case 173LL:
      goto L39661;
    case 174LL:
      goto L39761;
    default:
      break;
    }
  goto ret0;

 L24267: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L24268;
    }
  goto ret0;

 L24268: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L24269;
    }
  goto ret0;

 L24269: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L24270;
    }
  goto ret0;

 L24270: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24271;
  goto ret0;

 L24271: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24272;
    }
  goto ret0;

 L24272: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2385;  /* avx512vl_getexpv4sf_mask_round */
    }
  goto ret0;

 L39661: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L39662;
    }
  goto ret0;

 L39662: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L39663;
    }
  goto ret0;

 L39663: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39664;
  goto ret0;

 L39664: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39665;
  goto ret0;

 L39665: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L39666;
    }
  goto ret0;

 L39666: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15401 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3748;  /* avx512er_vmrcp28v4sf_round */
    }
  goto ret0;

 L39761: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L39762;
    }
  goto ret0;

 L39762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L39763;
    }
  goto ret0;

 L39763: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39764;
  goto ret0;

 L39764: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39765;
  goto ret0;

 L39765: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L39766;
    }
  goto ret0;

 L39766: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3760;  /* avx512er_vmrsqrt28v4sf_round */
    }
  goto ret0;

 L64420: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 157)
    goto L24634;
  goto ret0;

 L24634: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L24635;
    }
  goto ret0;

 L24635: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L24636;
    }
  goto ret0;

 L24636: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V4SImode)
    goto L64435;
  goto ret0;

 L64435: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L24637;
    }
 L64436: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[3] = x4;
      goto L24943;
    }
  goto ret0;

 L24637: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24638;
    }
  x4 = XVECEXP (x3, 0, 2);
  goto L64436;

 L24638: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L24639;
    }
 L24845: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L24846;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64436;

 L24639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L24640;
    }
  x3 = XEXP (x2, 1);
  goto L24845;

 L24640: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24641;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24845;

 L24641: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24642;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24845;

 L24642: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2425;  /* avx512vl_fixupimmv4sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24845;

 L24846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L24847;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64436;

 L24847: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24848;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64436;

 L24848: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L24849;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64436;

 L24849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2443;  /* avx512vl_fixupimmv4sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64436;

 L24943: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24944;
    }
  goto ret0;

 L24944: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L24945;
  goto ret0;

 L24945: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L24946;
  goto ret0;

 L24946: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24947;
  goto ret0;

 L24947: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24948;
    }
  goto ret0;

 L24948: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2451;  /* avx512f_sfixupimmv4sf_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_144 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L12702;
    case MINUS:
      goto L12738;
    case MULT:
      goto L13142;
    case DIV:
      goto L13290;
    case SQRT:
      goto L13706;
    case SMAX:
      goto L14012;
    case SMIN:
      goto L14048;
    case FMA:
      goto L16931;
    case UNSPEC:
      goto L64381;
    case VEC_DUPLICATE:
      goto L19879;
    case UNSIGNED_FLOAT:
      goto L20103;
    case VEC_MERGE:
      goto L24968;
    default:
     break;
   }
  goto ret0;

 L12702: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L12703;
    }
  goto ret0;

 L12703: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64393;
  goto ret0;

 L64393: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L12704;
    }
 L64394: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L12976;
    }
  goto ret0;

 L12704: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L12705;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64394;

 L12705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12706;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64394;

 L12706: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12707;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64394;

 L12707: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12708;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64394;

 L12708: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands) && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
							      || V4SFmode == V8DFmode
							      || V4SFmode == V8DImode
							      || V4SFmode == V16SImode)))))
    {
      return 1183;  /* *addv4sf3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64394;

 L12976: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L12977;
  goto ret0;

 L12977: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L12978;
  goto ret0;

 L12978: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12979;
  goto ret0;

 L12979: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12980;
    }
  goto ret0;

 L12980: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1213;  /* sse_vmaddv4sf3_round */
    }
  goto ret0;

 L12738: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L12739;
    }
  goto ret0;

 L12739: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64395;
  goto ret0;

 L64395: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L12740;
    }
 L64396: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L12996;
    }
  goto ret0;

 L12740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L12741;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64396;

 L12741: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12742;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64396;

 L12742: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12743;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64396;

 L12743: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12744;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64396;

 L12744: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands) && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
							      || V4SFmode == V8DFmode
							      || V4SFmode == V8DImode
							      || V4SFmode == V16SImode)))))
    {
      return 1187;  /* *subv4sf3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64396;

 L12996: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L12997;
  goto ret0;

 L12997: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L12998;
  goto ret0;

 L12998: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12999;
  goto ret0;

 L12999: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13000;
    }
  goto ret0;

 L13000: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1215;  /* sse_vmsubv4sf3_round */
    }
  goto ret0;

 L13142: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L13143;
    }
  goto ret0;

 L13143: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64397;
  goto ret0;

 L64397: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L13144;
    }
 L64398: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L13272;
    }
  goto ret0;

 L13144: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L13145;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64398;

 L13145: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13146;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64398;

 L13146: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13147;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64398;

 L13147: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13148;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64398;

 L13148: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands) && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
							      || V4SFmode == V8DFmode
							      || V4SFmode == V8DImode
							      || V4SFmode == V16SImode)))))
    {
      return 1231;  /* *mulv4sf3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64398;

 L13272: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L13273;
  goto ret0;

 L13273: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13274;
  goto ret0;

 L13274: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13275;
  goto ret0;

 L13275: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13276;
    }
  goto ret0;

 L13276: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1245;  /* sse_vmmulv4sf3_round */
    }
  goto ret0;

 L13290: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L13291;
    }
  goto ret0;

 L13291: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L13292;
    }
  goto ret0;

 L13292: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L13293;
  goto ret0;

 L13293: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13294;
  goto ret0;

 L13294: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13295;
  goto ret0;

 L13295: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13296;
    }
  goto ret0;

 L13296: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1247;  /* sse_vmdivv4sf3_round */
    }
  goto ret0;

 L13706: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L13707;
    }
  goto ret0;

 L13707: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L13708;
    }
  goto ret0;

 L13708: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13709;
  goto ret0;

 L13709: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13710;
  goto ret0;

 L13710: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13711;
    }
  goto ret0;

 L13711: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1302;  /* sse_vmsqrtv4sf2_round */
    }
  goto ret0;

 L14012: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L14013;
    }
  goto ret0;

 L14013: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64399;
  goto ret0;

 L64399: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L14014;
    }
 L64400: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L14550;
    }
  goto ret0;

 L14014: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L14015;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64400;

 L14015: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14016;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64400;

 L14016: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14017;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64400;

 L14017: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14018;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64400;

 L14018: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4SFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
									      || V4SFmode == V8DFmode
									      || V4SFmode == V8DImode
									      || V4SFmode == V16SImode)))))
    {
      return 1341;  /* *smaxv4sf3_finite_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64400;

 L14550: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L14551;
  goto ret0;

 L14551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14552;
  goto ret0;

 L14552: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14553;
  goto ret0;

 L14553: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14554;
    }
  goto ret0;

 L14554: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1403;  /* sse_vmsmaxv4sf3_round */
    }
  goto ret0;

 L14048: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L14049;
    }
  goto ret0;

 L14049: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64401;
  goto ret0;

 L64401: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L14050;
    }
 L64402: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L14570;
    }
  goto ret0;

 L14050: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L14051;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64402;

 L14051: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14052;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64402;

 L14052: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14053;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64402;

 L14053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14054;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64402;

 L14054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4SFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
									      || V4SFmode == V8DFmode
									      || V4SFmode == V8DImode
									      || V4SFmode == V16SImode)))))
    {
      return 1345;  /* *sminv4sf3_finite_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64402;

 L14570: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L14571;
  goto ret0;

 L14571: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14572;
  goto ret0;

 L14572: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14573;
  goto ret0;

 L14573: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14574;
    }
  goto ret0;

 L14574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1405;  /* sse_vmsminv4sf3_round */
    }
  goto ret0;

 L16931: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode)
    goto L64404;
  goto ret0;

 L64404: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17977;
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L16932;
    }
  goto ret0;

 L17977: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4SFmode)
    goto L64405;
  goto ret0;

 L64405: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V4SFmode))
    {
      operands[1] = x5;
      goto L17978;
    }
 L64406: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SFmode))
    {
      operands[1] = x5;
      goto L18503;
    }
 L64407: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SFmode))
    {
      operands[2] = x5;
      goto L19679;
    }
  goto ret0;

 L17978: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L17979;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17979: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4SFmode
      && GET_CODE (x4) == NEG)
    goto L17980;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17980: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L17981;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17981: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L17982;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17982: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L17983;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17983: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17984;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17984: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L17985;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L17985: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1751;  /* *fma_fnmsub_v4sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64406;

 L18503: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L18504;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18504: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4SFmode
      && GET_CODE (x4) == NEG)
    goto L18505;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18505: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L18506;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18506: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18507;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18507: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18508;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18508: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18509;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18509: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18510;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L18510: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1795;  /* avx512vl_fnmsub_v4sf_mask3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64407;

 L19679: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L19680;
    }
  goto ret0;

 L19680: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4SFmode)
    goto L64409;
  goto ret0;

 L64409: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19730;
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19681;
    }
  goto ret0;

 L19730: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L19731;
    }
  goto ret0;

 L19731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19732;
  goto ret0;

 L19732: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19733;
  goto ret0;

 L19733: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19734;
  goto ret0;

 L19734: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19735;
    }
  goto ret0;

 L19735: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3715 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F)))
    {
      return 1907;  /* *fmai_fnmsub_v4sf_round */
    }
  goto ret0;

 L19681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19682;
  goto ret0;

 L19682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19683;
  goto ret0;

 L19683: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19684;
  goto ret0;

 L19684: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19685;
    }
  goto ret0;

 L19685: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3697 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F)))
    {
      return 1903;  /* *fmai_fnmadd_v4sf_round */
    }
  goto ret0;

 L16932: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V4SFmode)
    goto L64410;
  goto ret0;

 L64410: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L16933;
    }
 L64411: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L19586;
    }
  goto ret0;

 L16933: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4SFmode)
    goto L64413;
  x4 = XEXP (x3, 1);
  goto L64411;

 L64413: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17305;
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L16934;
    }
  x4 = XEXP (x3, 1);
  goto L64411;

 L17305: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L17306;
    }
  x4 = XEXP (x3, 1);
  goto L64411;

 L17306: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17307;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L17307: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17308;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L17308: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17309;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L17309: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17310;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L17310: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1689;  /* avx512vl_fmsub_v4sf_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L16934: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L16935;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L16935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L16936;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L16936: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16937;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L16937: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16938;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L16938: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1653;  /* avx512vl_fmadd_v4sf_mask3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64411;

 L19586: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4SFmode)
    goto L64415;
  goto ret0;

 L64415: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19632;
  if (register_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L19587;
    }
  goto ret0;

 L19632: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[3] = x5;
      goto L19633;
    }
  goto ret0;

 L19633: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19634;
  goto ret0;

 L19634: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19635;
  goto ret0;

 L19635: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19636;
  goto ret0;

 L19636: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19637;
    }
  goto ret0;

 L19637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3680 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F)))
    {
      return 1899;  /* *fmai_fmsub_v4sf */
    }
  goto ret0;

 L19587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19588;
  goto ret0;

 L19588: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19589;
  goto ret0;

 L19589: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19590;
  goto ret0;

 L19590: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19591;
    }
  goto ret0;

 L19591: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3663 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F)))
    {
      return 1895;  /* *fmai_fmadd_v4sf */
    }
  goto ret0;

 L64381: ATTRIBUTE_UNUSED_LABEL
  return recog_143 (x0, insn, pnum_clobbers);

 L19879: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L64437;
    case V2SFmode:
      goto L64439;
    default:
      break;
    }
  goto ret0;

 L64437: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case FLOAT:
      goto L19880;
    case UNSIGNED_FLOAT:
      goto L19941;
    default:
     break;
   }
  goto ret0;

 L19880: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L19881;
    }
  goto ret0;

 L19881: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19882;
    }
  goto ret0;

 L19882: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19883;
  goto ret0;

 L19883: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19884;
  goto ret0;

 L19884: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L19885;
    }
  goto ret0;

 L19885: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3846 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE)))
    {
      return 1922;  /* sse_cvtsi2ss_round */
    }
  goto ret0;

 L19941: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L19942;
    }
  goto ret0;

 L19942: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L19943;
    }
  goto ret0;

 L19943: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19944;
  goto ret0;

 L19944: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19945;
  goto ret0;

 L19945: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L19946;
    }
  goto ret0;

 L19946: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3983 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V4SFmode == V4SFmode))))
    {
      return 1929;  /* cvtusi2ss32_round */
    }
  goto ret0;

 L64439: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == FLOAT_TRUNCATE)
    goto L21751;
  goto ret0;

 L21751: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V2DFmode))
    {
      operands[2] = x5;
      goto L21752;
    }
  goto ret0;

 L21752: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L21753;
    }
  goto ret0;

 L21753: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21754;
  goto ret0;

 L21754: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21755;
  goto ret0;

 L21755: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L21756;
    }
  goto ret0;

 L21756: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4838 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2158;  /* sse2_cvtsd2ss_round */
    }
  goto ret0;

 L20103: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L20104;
    }
  goto ret0;

 L20104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L20105;
    }
  goto ret0;

 L20105: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20106;
    }
  goto ret0;

 L20106: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20107;
  goto ret0;

 L20107: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20108;
    }
  goto ret0;

 L20108: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 1950;  /* ufloatv4siv4sf2_mask_round */
    }
  goto ret0;

 L24968: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4SFmode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 4
      && XINT (x4, 1) == 157)
    goto L24969;
  goto ret0;

 L24969: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[1] = x5;
      goto L24970;
    }
  goto ret0;

 L24970: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4SFmode))
    {
      operands[2] = x5;
      goto L24971;
    }
  goto ret0;

 L24971: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L24972;
    }
  goto ret0;

 L24972: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (const_0_to_255_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L24973;
    }
  goto ret0;

 L24973: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[1]))
    goto L24974;
  goto ret0;

 L24974: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L24975;
  goto ret0;

 L24975: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L24976;
    }
 L25061: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L25062;
  goto ret0;

 L24976: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L24977;
    }
  x3 = XEXP (x2, 1);
  goto L25061;

 L24977: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24978;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L25061;

 L24978: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24979;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L25061;

 L24979: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2453;  /* avx512f_sfixupimmv4sf_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L25061;

 L25062: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L25063;
    }
  goto ret0;

 L25063: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25064;
  goto ret0;

 L25064: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L25065;
    }
  goto ret0;

 L25065: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2459;  /* avx512f_sfixupimmv4sf_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_145 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L64440;
    case 1:
      goto L64441;
    case 4:
      goto L64442;
    case 3:
      goto L64445;
    default:
      break;
    }
  goto ret0;

 L64440: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23863;
    case 82LL:
      goto L25179;
    case 161LL:
      goto L51024;
    default:
      break;
    }
  goto ret0;

 L23863: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L23864;
    }
  goto ret0;

 L23864: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L23865;
    }
  goto ret0;

 L23865: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23866;
  goto ret0;

 L23866: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23867;
    }
  goto ret0;

 L23867: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2341;  /* avx512vl_scalefv4sf_round */
    }
  goto ret0;

 L25179: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L25180;
    }
  goto ret0;

 L25180: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25181;
    }
  goto ret0;

 L25181: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25182;
  goto ret0;

 L25182: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25183;
    }
  goto ret0;

 L25183: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2471;  /* avx512vl_rndscalev4sf_round */
    }
  goto ret0;

 L51024: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L51025;
    }
  goto ret0;

 L51025: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51026;
    }
  goto ret0;

 L51026: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51027;
  goto ret0;

 L51027: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51028;
    }
  goto ret0;

 L51028: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4624;  /* avx512vl_getmantv4sf_round */
    }
  goto ret0;

 L64441: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 160)
    goto L24250;
  goto ret0;

 L24250: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L24251;
    }
  goto ret0;

 L24251: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24252;
  goto ret0;

 L24252: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L24253;
    }
  goto ret0;

 L24253: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2383;  /* avx512vl_getexpv4sf_round */
    }
  goto ret0;

 L64442: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 157LL:
      goto L24611;
    case 145LL:
      goto L45014;
    default:
      break;
    }
  goto ret0;

 L24611: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L24612;
    }
  goto ret0;

 L24612: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L24613;
    }
  goto ret0;

 L24613: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L24614;
    }
  goto ret0;

 L24614: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24615;
    }
  goto ret0;

 L24615: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24616;
  goto ret0;

 L24616: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24617;
    }
  goto ret0;

 L24617: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 266 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2423;  /* avx512vl_fixupimmv4sf_round */
    }
  goto ret0;

 L45014: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L45015;
    }
  if (GET_CODE (x3) == PC)
    goto L45479;
  goto ret0;

 L45015: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[7] = x3;
      goto L45016;
    }
  goto ret0;

 L45016: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64447;
    case DImode:
      goto L64448;
    default:
      break;
    }
  goto ret0;

 L64447: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45017;
  goto ret0;

 L45017: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L45018;
    }
  goto ret0;

 L45018: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64449;
    case V2DImode:
      goto L64450;
    default:
      break;
    }
  goto ret0;

 L64449: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L45019;
    }
  goto ret0;

 L45019: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45020;
    }
  goto ret0;

 L45020: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45021;
  goto ret0;

 L45021: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45022;
  goto ret0;

 L45022: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L45023;
    }
  goto ret0;

 L45023: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45024;
  goto ret0;

 L45024: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L45025;
    }
  goto ret0;

 L45025: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4339;  /* *avx2_gathersiv4sf */
    }
  goto ret0;

 L64450: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45947;
    }
  goto ret0;

 L45947: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45948;
    }
  goto ret0;

 L45948: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45949;
  goto ret0;

 L45949: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45950;
  goto ret0;

 L45950: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L45951;
    }
  goto ret0;

 L45951: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45952;
  goto ret0;

 L45952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L45953;
    }
  goto ret0;

 L45953: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4371;  /* *avx2_gatherdiv4sf */
    }
  goto ret0;

 L64448: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45046;
  goto ret0;

 L45046: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L45047;
    }
  goto ret0;

 L45047: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64451;
    case V2DImode:
      goto L64452;
    default:
      break;
    }
  goto ret0;

 L64451: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L45048;
    }
  goto ret0;

 L45048: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45049;
    }
  goto ret0;

 L45049: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45050;
  goto ret0;

 L45050: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45051;
  goto ret0;

 L45051: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L45052;
    }
  goto ret0;

 L45052: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45053;
  goto ret0;

 L45053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L45054;
    }
  goto ret0;

 L45054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4340;  /* *avx2_gathersiv4sf */
    }
  goto ret0;

 L64452: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45976;
    }
  goto ret0;

 L45976: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45977;
    }
  goto ret0;

 L45977: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45978;
  goto ret0;

 L45978: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45979;
  goto ret0;

 L45979: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L45980;
    }
  goto ret0;

 L45980: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45981;
  goto ret0;

 L45981: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L45982;
    }
  goto ret0;

 L45982: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4372;  /* *avx2_gatherdiv4sf */
    }
  goto ret0;

 L45479: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L45480;
    }
  goto ret0;

 L45480: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64453;
    case DImode:
      goto L64454;
    default:
      break;
    }
  goto ret0;

 L64453: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45481;
  goto ret0;

 L45481: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45482;
    }
  goto ret0;

 L45482: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64455;
    case V2DImode:
      goto L64456;
    default:
      break;
    }
  goto ret0;

 L64455: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45483;
    }
  goto ret0;

 L45483: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45484;
    }
  goto ret0;

 L45484: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45485;
  goto ret0;

 L45485: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45486;
  goto ret0;

 L45486: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L45487;
    }
  goto ret0;

 L45487: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45488;
  goto ret0;

 L45488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L45489;
    }
  goto ret0;

 L45489: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4355;  /* *avx2_gathersiv4sf_2 */
    }
  goto ret0;

 L64456: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46411;
    }
  goto ret0;

 L46411: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46412;
    }
  goto ret0;

 L46412: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46413;
  goto ret0;

 L46413: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46414;
  goto ret0;

 L46414: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L46415;
    }
  goto ret0;

 L46415: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46416;
  goto ret0;

 L46416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L46417;
    }
  goto ret0;

 L46417: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4387;  /* *avx2_gatherdiv4sf_2 */
    }
  goto ret0;

 L64454: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45510;
  goto ret0;

 L45510: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45511;
    }
  goto ret0;

 L45511: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64457;
    case V2DImode:
      goto L64458;
    default:
      break;
    }
  goto ret0;

 L64457: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45512;
    }
  goto ret0;

 L45512: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45513;
    }
  goto ret0;

 L45513: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45514;
  goto ret0;

 L45514: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45515;
  goto ret0;

 L45515: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L45516;
    }
  goto ret0;

 L45516: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45517;
  goto ret0;

 L45517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L45518;
    }
  goto ret0;

 L45518: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4356;  /* *avx2_gathersiv4sf_2 */
    }
  goto ret0;

 L64458: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46440;
    }
  goto ret0;

 L46440: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46441;
    }
  goto ret0;

 L46441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46442;
  goto ret0;

 L46442: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46443;
  goto ret0;

 L46443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L46444;
    }
  goto ret0;

 L46444: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46445;
  goto ret0;

 L46445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L46446;
    }
  goto ret0;

 L46446: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4388;  /* *avx2_gatherdiv4sf_2 */
    }
  goto ret0;

 L64445: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47350;
  goto ret0;

 L47350: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L47351;
    }
  if (GET_CODE (x3) == PC)
    goto L47951;
  goto ret0;

 L47351: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47352;
    }
  goto ret0;

 L47352: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[6] = x3;
      goto L47353;
    }
  goto ret0;

 L47353: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64459;
    case DImode:
      goto L64460;
    default:
      break;
    }
  goto ret0;

 L64459: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47354;
  goto ret0;

 L47354: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47355;
    }
  goto ret0;

 L47355: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64461;
    case V2DImode:
      goto L64462;
    default:
      break;
    }
  goto ret0;

 L64461: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47356;
    }
  goto ret0;

 L47356: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47357;
    }
  goto ret0;

 L47357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47358;
  goto ret0;

 L47358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47359;
    }
  goto ret0;

 L47359: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4419;  /* *avx512f_gathersiv4sf */
    }
  goto ret0;

 L64462: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48556;
    }
  goto ret0;

 L48556: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48557;
    }
  goto ret0;

 L48557: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48558;
  goto ret0;

 L48558: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48559;
    }
  goto ret0;

 L48559: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4467;  /* *avx512f_gatherdiv4sf */
    }
  goto ret0;

 L64460: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47379;
  goto ret0;

 L47379: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47380;
    }
  goto ret0;

 L47380: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64463;
    case V2DImode:
      goto L64464;
    default:
      break;
    }
  goto ret0;

 L64463: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47381;
    }
  goto ret0;

 L47381: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47382;
    }
  goto ret0;

 L47382: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47383;
  goto ret0;

 L47383: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47384;
    }
  goto ret0;

 L47384: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4420;  /* *avx512f_gathersiv4sf */
    }
  goto ret0;

 L64464: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48581;
    }
  goto ret0;

 L48581: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48582;
    }
  goto ret0;

 L48582: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48583;
  goto ret0;

 L48583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48584;
    }
  goto ret0;

 L48584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4468;  /* *avx512f_gatherdiv4sf */
    }
  goto ret0;

 L47951: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47952;
    }
  goto ret0;

 L47952: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SFmode))
    {
      operands[5] = x3;
      goto L47953;
    }
  goto ret0;

 L47953: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64465;
    case DImode:
      goto L64466;
    default:
      break;
    }
  goto ret0;

 L64465: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47954;
  goto ret0;

 L47954: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47955;
    }
  goto ret0;

 L47955: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64467;
    case V2DImode:
      goto L64468;
    default:
      break;
    }
  goto ret0;

 L64467: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47956;
    }
  goto ret0;

 L47956: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47957;
    }
  goto ret0;

 L47957: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47958;
  goto ret0;

 L47958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47959;
    }
  goto ret0;

 L47959: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4443;  /* *avx512f_gathersiv4sf_2 */
    }
  goto ret0;

 L64468: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49156;
    }
  goto ret0;

 L49156: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49157;
    }
  goto ret0;

 L49157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49158;
  goto ret0;

 L49158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49159;
    }
  goto ret0;

 L49159: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4491;  /* *avx512f_gatherdiv4sf_2 */
    }
  goto ret0;

 L64466: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47979;
  goto ret0;

 L47979: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47980;
    }
  goto ret0;

 L47980: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64469;
    case V2DImode:
      goto L64470;
    default:
      break;
    }
  goto ret0;

 L64469: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47981;
    }
  goto ret0;

 L47981: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47982;
    }
  goto ret0;

 L47982: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47983;
  goto ret0;

 L47983: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47984;
    }
  goto ret0;

 L47984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4444;  /* *avx512f_gathersiv4sf_2 */
    }
  goto ret0;

 L64470: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49181;
    }
  goto ret0;

 L49181: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49182;
    }
  goto ret0;

 L49182: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49183;
  goto ret0;

 L49183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49184;
    }
  goto ret0;

 L49184: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4492;  /* *avx512f_gatherdiv4sf_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_146 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L12683;
    case VEC_MERGE:
      goto L12701;
    case MINUS:
      goto L12719;
    case MULT:
      goto L13123;
    case SMAX:
      goto L13993;
    case SMIN:
      goto L14029;
    case FMA:
      goto L17951;
    case UNSIGNED_FLOAT:
      goto L20086;
    case UNSPEC:
      goto L64351;
    case VEC_SELECT:
      goto L46660;
    case NEG:
    case ABS:
      goto L64334;
    default:
      goto ret0;
   }
 L64334: ATTRIBUTE_UNUSED_LABEL
  if (absneg_operator (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L12501;
    }
  goto ret0;

 L12683: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12684;
    }
  goto ret0;

 L12684: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L12685;
    }
  goto ret0;

 L12685: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12686;
  goto ret0;

 L12686: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12687;
    }
  goto ret0;

 L12687: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands) && 1 && (V4SFmode == V16SFmode
							      || V4SFmode == V8DFmode
							      || V4SFmode == V8DImode
							      || V4SFmode == V16SImode))))
    {
      return 1181;  /* *addv4sf3_round */
    }
  goto ret0;

 L12701: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode)
    goto L64358;
  goto ret0;

 L64358: ATTRIBUTE_UNUSED_LABEL
  return recog_144 (x0, insn, pnum_clobbers);

 L12719: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12720;
    }
  goto ret0;

 L12720: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L12721;
    }
  goto ret0;

 L12721: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12722;
  goto ret0;

 L12722: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12723;
    }
  goto ret0;

 L12723: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands) && 1 && (V4SFmode == V16SFmode
							      || V4SFmode == V8DFmode
							      || V4SFmode == V8DImode
							      || V4SFmode == V16SImode))))
    {
      return 1185;  /* *subv4sf3_round */
    }
  goto ret0;

 L13123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13124;
    }
  goto ret0;

 L13124: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L13125;
    }
  goto ret0;

 L13125: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13126;
  goto ret0;

 L13126: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13127;
    }
  goto ret0;

 L13127: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands) && 1 && (V4SFmode == V16SFmode
							      || V4SFmode == V8DFmode
							      || V4SFmode == V8DImode
							      || V4SFmode == V16SImode))))
    {
      return 1229;  /* *mulv4sf3_round */
    }
  goto ret0;

 L13993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L13994;
    }
  goto ret0;

 L13994: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L13995;
    }
  goto ret0;

 L13995: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13996;
  goto ret0;

 L13996: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13997;
    }
  goto ret0;

 L13997: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4SFmode, operands)
   && 1 && (V4SFmode == V16SFmode
									      || V4SFmode == V8DFmode
									      || V4SFmode == V8DImode
									      || V4SFmode == V16SImode))))
    {
      return 1339;  /* *smaxv4sf3_finite_round */
    }
  goto ret0;

 L14029: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L14030;
    }
  goto ret0;

 L14030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L14031;
    }
  goto ret0;

 L14031: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14032;
  goto ret0;

 L14032: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14033;
    }
  goto ret0;

 L14033: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4SFmode, operands)
   && 1 && (V4SFmode == V16SFmode
									      || V4SFmode == V8DFmode
									      || V4SFmode == V8DImode
									      || V4SFmode == V16SImode))))
    {
      return 1343;  /* *sminv4sf3_finite_round */
    }
  goto ret0;

 L17951: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4SFmode
      && GET_CODE (x3) == NEG)
    goto L17952;
  goto ret0;

 L17952: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L17953;
    }
  goto ret0;

 L17953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[2] = x3;
      goto L17954;
    }
  goto ret0;

 L17954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4SFmode
      && GET_CODE (x3) == NEG)
    goto L17955;
  goto ret0;

 L17955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SFmode))
    {
      operands[3] = x4;
      goto L17956;
    }
  goto ret0;

 L17956: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17957;
  goto ret0;

 L17957: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17958;
    }
  goto ret0;

 L17958: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1749;  /* *fma_fnmsub_v4sf */
    }
  goto ret0;

 L20086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L20087;
    }
  goto ret0;

 L20087: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20088;
  goto ret0;

 L20088: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20089;
    }
  goto ret0;

 L20089: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4017 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 273 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1948;  /* ufloatv4siv4sf2_round */
    }
  goto ret0;

 L64351: ATTRIBUTE_UNUSED_LABEL
  return recog_145 (x0, insn, pnum_clobbers);

 L46660: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SFmode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 4
      && XINT (x3, 1) == 145)
    goto L46661;
  goto ret0;

 L46661: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L46662;
    }
  if (GET_CODE (x4) == PC)
    goto L46822;
  goto ret0;

 L46662: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (vsib_mem_operator (x4, SFmode))
    {
      operands[7] = x4;
      goto L46663;
    }
  goto ret0;

 L46663: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case SImode:
      goto L64471;
    case DImode:
      goto L64472;
    default:
      break;
    }
  goto ret0;

 L64471: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46664;
  goto ret0;

 L46664: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, SImode))
    {
      operands[3] = x6;
      goto L46665;
    }
  goto ret0;

 L46665: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[4] = x6;
      goto L46666;
    }
  goto ret0;

 L46666: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[6] = x6;
      goto L46667;
    }
  goto ret0;

 L46667: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46668;
  goto ret0;

 L46668: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46669;
  goto ret0;

 L46669: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SFmode))
    {
      operands[5] = x4;
      goto L46670;
    }
  goto ret0;

 L46670: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46671;
  goto ret0;

 L46671: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46672;
  goto ret0;

 L46672: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46673;
  goto ret0;

 L46673: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46674;
  goto ret0;

 L46674: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46675;
  goto ret0;

 L46675: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46676;
  goto ret0;

 L46676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46677;
    }
  goto ret0;

 L46677: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4395;  /* *avx2_gatherdiv8sf_3 */
    }
  goto ret0;

 L64472: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46704;
  goto ret0;

 L46704: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, DImode))
    {
      operands[3] = x6;
      goto L46705;
    }
  goto ret0;

 L46705: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[4] = x6;
      goto L46706;
    }
  goto ret0;

 L46706: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[6] = x6;
      goto L46707;
    }
  goto ret0;

 L46707: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46708;
  goto ret0;

 L46708: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46709;
  goto ret0;

 L46709: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SFmode))
    {
      operands[5] = x4;
      goto L46710;
    }
  goto ret0;

 L46710: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46711;
  goto ret0;

 L46711: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46712;
  goto ret0;

 L46712: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46713;
  goto ret0;

 L46713: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46714;
  goto ret0;

 L46714: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46715;
  goto ret0;

 L46715: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46716;
  goto ret0;

 L46716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46717;
    }
  goto ret0;

 L46717: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18130 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4396;  /* *avx2_gatherdiv8sf_3 */
    }
  goto ret0;

 L46822: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (vsib_mem_operator (x4, SFmode))
    {
      operands[6] = x4;
      goto L46823;
    }
  goto ret0;

 L46823: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case SImode:
      goto L64473;
    case DImode:
      goto L64474;
    default:
      break;
    }
  goto ret0;

 L64473: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46824;
  goto ret0;

 L46824: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L46825;
    }
  goto ret0;

 L46825: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[3] = x6;
      goto L46826;
    }
  goto ret0;

 L46826: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[5] = x6;
      goto L46827;
    }
  goto ret0;

 L46827: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46828;
  goto ret0;

 L46828: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46829;
  goto ret0;

 L46829: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SFmode))
    {
      operands[4] = x4;
      goto L46830;
    }
  goto ret0;

 L46830: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46831;
  goto ret0;

 L46831: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46832;
  goto ret0;

 L46832: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46833;
  goto ret0;

 L46833: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46834;
  goto ret0;

 L46834: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46835;
  goto ret0;

 L46835: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46836;
  goto ret0;

 L46836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46837;
    }
  goto ret0;

 L46837: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4399;  /* *avx2_gatherdiv8sf_4 */
    }
  goto ret0;

 L64474: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x5) == UNSPEC
      && XVECLEN (x5, 0) == 3
      && XINT (x5, 1) == 146)
    goto L46864;
  goto ret0;

 L46864: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (vsib_address_operand (x6, DImode))
    {
      operands[2] = x6;
      goto L46865;
    }
  goto ret0;

 L46865: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (register_operand (x6, V4DImode))
    {
      operands[3] = x6;
      goto L46866;
    }
  goto ret0;

 L46866: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 2);
  if (const1248_operand (x6, SImode))
    {
      operands[5] = x6;
      goto L46867;
    }
  goto ret0;

 L46867: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L46868;
  goto ret0;

 L46868: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == SCRATCH)
    goto L46869;
  goto ret0;

 L46869: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (register_operand (x4, V4SFmode))
    {
      operands[4] = x4;
      goto L46870;
    }
  goto ret0;

 L46870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 4)
    goto L46871;
  goto ret0;

 L46871: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L46872;
  goto ret0;

 L46872: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L46873;
  goto ret0;

 L46873: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L46874;
  goto ret0;

 L46874: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L46875;
  goto ret0;

 L46875: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46876;
  goto ret0;

 L46876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L46877;
    }
  goto ret0;

 L46877: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18153 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4400;  /* *avx2_gatherdiv8sf_4 */
    }
  goto ret0;

 L12501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L12502;
    }
  goto ret0;

 L12502: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L12503;
  goto ret0;

 L12503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L12504;
    }
  goto ret0;

 L12504: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 1160;  /* *absnegv4sf2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_147 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (XVECLEN (x3, 0))
    {
    case 3:
      goto L64567;
    case 2:
      goto L64568;
    case 1:
      goto L64569;
    case 4:
      goto L64570;
    default:
      break;
    }
  goto ret0;

 L64567: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 123LL:
      goto L18740;
    case 190LL:
      goto L50758;
    default:
      break;
    }
  goto ret0;

 L18740: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L18741;
    }
  goto ret0;

 L18741: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (GET_MODE (x4) == V8DFmode)
    goto L64577;
  goto ret0;

 L64577: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L18742;
    }
 L64578: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L18868;
    }
  goto ret0;

 L18742: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V8DFmode)
    goto L64580;
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L64580: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19226;
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L18743;
    }
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L19226: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L19227;
    }
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L19227: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L19228;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L19228: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L19229;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L19229: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19230;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L19230: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L19231;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L19231: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1865;  /* fma_fmsubadd_v8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L18743: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L18744;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L18744: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L18745;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L18745: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18746;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L18746: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18747;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L18747: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1819;  /* fma_fmaddsub_v8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64578;

 L18868: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V8DFmode)
    goto L64583;
  goto ret0;

 L64583: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19364;
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L18869;
    }
 L64582: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L19007;
    }
  goto ret0;

 L19364: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8DFmode)
    goto L64584;
  goto ret0;

 L64584: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L19365;
    }
 L64585: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L19515;
    }
  goto ret0;

 L19365: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19366;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64585;

 L19366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19367;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64585;

 L19367: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19368;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64585;

 L19368: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19369;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64585;

 L19369: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1877;  /* avx512f_fmsubadd_v8df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64585;

 L19515: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19516;
  goto ret0;

 L19516: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19517;
    }
  goto ret0;

 L19517: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19518;
  goto ret0;

 L19518: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19519;
    }
  goto ret0;

 L19519: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1889;  /* avx512f_fmsubadd_v8df_mask3_round */
    }
  goto ret0;

 L18869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18870;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64582;

 L18870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18871;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64582;

 L18871: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18872;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64582;

 L18872: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18873;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64582;

 L18873: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1831;  /* avx512f_fmaddsub_v8df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64582;

 L19007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19008;
  goto ret0;

 L19008: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19009;
    }
  goto ret0;

 L19009: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19010;
  goto ret0;

 L19010: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19011;
    }
  goto ret0;

 L19011: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1843;  /* avx512f_fmaddsub_v8df_mask3_round */
    }
  goto ret0;

 L50758: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L50759;
    }
  goto ret0;

 L50759: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L50760;
    }
  goto ret0;

 L50760: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L50761;
    }
  goto ret0;

 L50761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L50762;
    }
  goto ret0;

 L50762: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L50763;
    }
  goto ret0;

 L50763: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50764;
  goto ret0;

 L50764: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L50765;
    }
  goto ret0;

 L50765: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)))))
    {
      return 4592;  /* avx512dq_rangepv8df_mask_round */
    }
  goto ret0;

 L64568: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 158LL:
      goto L23918;
    case 82LL:
      goto L25234;
    case 161LL:
      goto L51079;
    default:
      break;
    }
  goto ret0;

 L23918: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L23919;
    }
  goto ret0;

 L23919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L23920;
    }
  goto ret0;

 L23920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L23921;
    }
  goto ret0;

 L23921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L23922;
    }
  goto ret0;

 L23922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23923;
  goto ret0;

 L23923: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L23924;
    }
  goto ret0;

 L23924: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2347;  /* avx512f_scalefv8df_mask_round */
    }
  goto ret0;

 L25234: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L25235;
    }
  goto ret0;

 L25235: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L25236;
    }
  goto ret0;

 L25236: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L25237;
    }
  goto ret0;

 L25237: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L25238;
    }
  goto ret0;

 L25238: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25239;
  goto ret0;

 L25239: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25240;
    }
  goto ret0;

 L25240: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2477;  /* avx512f_rndscalev8df_mask_round */
    }
  goto ret0;

 L51079: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L51080;
    }
  goto ret0;

 L51080: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L51081;
    }
  goto ret0;

 L51081: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L51082;
    }
  goto ret0;

 L51082: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L51083;
    }
  goto ret0;

 L51083: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51084;
  goto ret0;

 L51084: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L51085;
    }
  goto ret0;

 L51085: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4630;  /* avx512f_getmantv8df_mask_round */
    }
  goto ret0;

 L64569: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 160LL:
      goto L24299;
    case 172LL:
      goto L39579;
    case 173LL:
      goto L39643;
    case 174LL:
      goto L39743;
    default:
      break;
    }
  goto ret0;

 L24299: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L24300;
    }
  goto ret0;

 L24300: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L24301;
    }
  goto ret0;

 L24301: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L24302;
    }
  goto ret0;

 L24302: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24303;
  goto ret0;

 L24303: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24304;
    }
  goto ret0;

 L24304: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2389;  /* avx512f_getexpv8df_mask_round */
    }
  goto ret0;

 L39579: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L39580;
    }
  goto ret0;

 L39580: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L39581;
    }
  goto ret0;

 L39581: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L39582;
    }
  goto ret0;

 L39582: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39583;
  goto ret0;

 L39583: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39584;
    }
  goto ret0;

 L39584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))))
    {
      return 3738;  /* avx512er_exp2v8df_mask_round */
    }
  goto ret0;

 L39643: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L39644;
    }
  goto ret0;

 L39644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L39645;
    }
  goto ret0;

 L39645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L39646;
    }
  goto ret0;

 L39646: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39647;
  goto ret0;

 L39647: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39648;
    }
  goto ret0;

 L39648: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))))
    {
      return 3746;  /* avx512er_rcp28v8df_mask_round */
    }
  goto ret0;

 L39743: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L39744;
    }
  goto ret0;

 L39744: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L39745;
    }
  goto ret0;

 L39745: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L39746;
    }
  goto ret0;

 L39746: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39747;
  goto ret0;

 L39747: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L39748;
    }
  goto ret0;

 L39748: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER))))
    {
      return 3758;  /* avx512er_rsqrt28v8df_mask_round */
    }
  goto ret0;

 L64570: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 157)
    goto L24678;
  goto ret0;

 L24678: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L24679;
    }
  goto ret0;

 L24679: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L24680;
    }
  goto ret0;

 L24680: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[3] = x4;
      goto L24681;
    }
  goto ret0;

 L24681: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24682;
    }
  goto ret0;

 L24682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[5] = x3;
      goto L24683;
    }
 L24870: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L24871;
  goto ret0;

 L24683: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L24684;
    }
  x3 = XEXP (x2, 1);
  goto L24870;

 L24684: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24685;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24870;

 L24685: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24686;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24870;

 L24686: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2429;  /* avx512f_fixupimmv8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24870;

 L24871: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L24872;
    }
  goto ret0;

 L24872: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24873;
  goto ret0;

 L24873: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L24874;
    }
  goto ret0;

 L24874: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2445;  /* avx512f_fixupimmv8df_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_148 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L12774;
    case MINUS:
      goto L12810;
    case MULT:
      goto L13178;
    case DIV:
      goto L13432;
    case SQRT:
      goto L13662;
    case SMAX:
      goto L14084;
    case SMIN:
      goto L14120;
    case FMA:
      goto L16742;
    case UNSPEC:
      goto L64537;
    case FLOAT:
      goto L20671;
    case UNSIGNED_FLOAT:
      goto L20703;
    case FLOAT_EXTEND:
      goto L21871;
    default:
     break;
   }
  goto ret0;

 L12774: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L12775;
    }
  goto ret0;

 L12775: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L12776;
    }
  goto ret0;

 L12776: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L12777;
    }
  goto ret0;

 L12777: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12778;
    }
  goto ret0;

 L12778: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12779;
  goto ret0;

 L12779: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12780;
    }
  goto ret0;

 L12780: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands) && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1191;  /* *addv8df3_mask_round */
    }
  goto ret0;

 L12810: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L12811;
    }
  goto ret0;

 L12811: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L12812;
    }
  goto ret0;

 L12812: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L12813;
    }
  goto ret0;

 L12813: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12814;
    }
  goto ret0;

 L12814: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12815;
  goto ret0;

 L12815: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12816;
    }
  goto ret0;

 L12816: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands) && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1195;  /* *subv8df3_mask_round */
    }
  goto ret0;

 L13178: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L13179;
    }
  goto ret0;

 L13179: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L13180;
    }
  goto ret0;

 L13180: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L13181;
    }
  goto ret0;

 L13181: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13182;
    }
  goto ret0;

 L13182: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13183;
  goto ret0;

 L13183: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13184;
    }
  goto ret0;

 L13184: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands) && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1235;  /* *mulv8df3_mask_round */
    }
  goto ret0;

 L13432: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L13433;
    }
  goto ret0;

 L13433: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L13434;
    }
  goto ret0;

 L13434: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L13435;
    }
  goto ret0;

 L13435: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13436;
    }
  goto ret0;

 L13436: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13437;
  goto ret0;

 L13437: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13438;
    }
  goto ret0;

 L13438: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1263;  /* avx512f_divv8df3_mask_round */
    }
  goto ret0;

 L13662: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L13663;
    }
  goto ret0;

 L13663: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L13664;
    }
  goto ret0;

 L13664: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L13665;
    }
  goto ret0;

 L13665: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13666;
  goto ret0;

 L13666: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L13667;
    }
  goto ret0;

 L13667: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1296;  /* avx512f_sqrtv8df2_mask_round */
    }
  goto ret0;

 L14084: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L14085;
    }
  goto ret0;

 L14085: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L14086;
    }
  goto ret0;

 L14086: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L14087;
    }
  goto ret0;

 L14087: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14088;
    }
  goto ret0;

 L14088: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14089;
  goto ret0;

 L14089: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14090;
    }
  goto ret0;

 L14090: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8DFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1349;  /* *smaxv8df3_finite_mask_round */
    }
 L14438: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1389;  /* *smaxv8df3_mask_round */
    }
  goto ret0;

 L14120: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L14121;
    }
  goto ret0;

 L14121: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L14122;
    }
  goto ret0;

 L14122: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L14123;
    }
  goto ret0;

 L14123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14124;
    }
  goto ret0;

 L14124: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14125;
  goto ret0;

 L14125: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14126;
    }
  goto ret0;

 L14126: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8DFmode, operands)
   && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1353;  /* *sminv8df3_finite_mask_round */
    }
 L14474: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 1393;  /* *sminv8df3_mask_round */
    }
  goto ret0;

 L16742: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V8DFmode)
    goto L64548;
  goto ret0;

 L64548: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17662;
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L16743;
    }
  goto ret0;

 L17662: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V8DFmode))
    {
      operands[1] = x5;
      goto L17663;
    }
  goto ret0;

 L17663: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V8DFmode)
    goto L64549;
  goto ret0;

 L64549: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L17664;
    }
 L64550: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L17774;
    }
  goto ret0;

 L17664: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8DFmode)
    goto L64552;
  x4 = XEXP (x3, 1);
  goto L64550;

 L64552: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18280;
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17665;
    }
  x4 = XEXP (x3, 1);
  goto L64550;

 L18280: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L18281;
    }
  x4 = XEXP (x3, 1);
  goto L64550;

 L18281: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L18282;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L18282: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L18283;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L18283: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18284;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L18284: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18285;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L18285: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1777;  /* fma_fnmsub_v8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L17665: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L17666;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L17666: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L17667;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L17667: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17668;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L17668: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L17669;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L17669: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1723;  /* fma_fnmadd_v8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64550;

 L17774: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8DFmode)
    goto L64555;
  goto ret0;

 L64555: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18400;
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17775;
    }
 L64554: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17869;
    }
  goto ret0;

 L18400: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8DFmode)
    goto L64556;
  goto ret0;

 L64556: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L18401;
    }
 L64557: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L18533;
    }
  goto ret0;

 L18401: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18402;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64557;

 L18402: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18403;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64557;

 L18403: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18404;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64557;

 L18404: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18405;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64557;

 L18405: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3443 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1787;  /* avx512f_fnmsub_v8df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64557;

 L18533: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18534;
  goto ret0;

 L18534: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18535;
    }
  goto ret0;

 L18535: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18536;
  goto ret0;

 L18536: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18537;
    }
  goto ret0;

 L18537: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1797;  /* avx512f_fnmsub_v8df_mask3_round */
    }
  goto ret0;

 L17775: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17776;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64554;

 L17776: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17777;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64554;

 L17777: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17778;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64554;

 L17778: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17779;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64554;

 L17779: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3373 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1733;  /* avx512f_fnmadd_v8df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64554;

 L17869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L17870;
  goto ret0;

 L17870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17871;
    }
  goto ret0;

 L17871: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17872;
  goto ret0;

 L17872: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17873;
    }
  goto ret0;

 L17873: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3391 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1741;  /* avx512f_fnmadd_v8df_mask3_round */
    }
  goto ret0;

 L16743: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V8DFmode)
    goto L64558;
  goto ret0;

 L64558: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L16744;
    }
 L64559: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L16844;
    }
  goto ret0;

 L16744: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8DFmode)
    goto L64561;
  x4 = XEXP (x3, 1);
  goto L64559;

 L64561: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17192;
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L16745;
    }
  x4 = XEXP (x3, 1);
  goto L64559;

 L17192: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L17193;
    }
  x4 = XEXP (x3, 1);
  goto L64559;

 L17193: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L17194;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L17194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L17195;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L17195: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17196;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L17196: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L17197;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L17197: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1679;  /* fma_fmsub_v8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L16745: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V8DFmode))
    {
      operands[4] = x3;
      goto L16746;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L16746: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L16747;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L16747: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16748;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L16748: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L16749;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L16749: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1635;  /* fma_fmadd_v8df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64559;

 L16844: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V8DFmode)
    goto L64564;
  goto ret0;

 L64564: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17330;
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L16845;
    }
 L64563: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L16957;
    }
  goto ret0;

 L17330: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V8DFmode)
    goto L64565;
  goto ret0;

 L64565: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L17331;
    }
 L64566: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DFmode))
    {
      operands[3] = x5;
      goto L17453;
    }
  goto ret0;

 L17331: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17332;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64566;

 L17332: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17333;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64566;

 L17333: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17334;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64566;

 L17334: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17335;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64566;

 L17335: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1691;  /* avx512f_fmsub_v8df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  x5 = XEXP (x4, 0);
  goto L64566;

 L17453: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L17454;
  goto ret0;

 L17454: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17455;
    }
  goto ret0;

 L17455: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17456;
  goto ret0;

 L17456: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17457;
    }
  goto ret0;

 L17457: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1701;  /* avx512f_fmsub_v8df_mask3_round */
    }
  goto ret0;

 L16845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L16846;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64563;

 L16846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L16847;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64563;

 L16847: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16848;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64563;

 L16848: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16849;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64563;

 L16849: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3240 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1645;  /* avx512f_fmadd_v8df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 2);
  goto L64563;

 L16957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L16958;
  goto ret0;

 L16958: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L16959;
    }
  goto ret0;

 L16959: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16960;
  goto ret0;

 L16960: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16961;
    }
  goto ret0;

 L16961: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1655;  /* avx512f_fmadd_v8df_mask3_round */
    }
  goto ret0;

 L64537: ATTRIBUTE_UNUSED_LABEL
  return recog_147 (x0, insn, pnum_clobbers);

 L20671: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L20672;
    }
  goto ret0;

 L20672: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L20673;
    }
  goto ret0;

 L20673: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20674;
    }
  goto ret0;

 L20674: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20675;
  goto ret0;

 L20675: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20676;
    }
  goto ret0;

 L20676: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))))
    {
      return 2023;  /* floatv8div8df2_mask_round */
    }
  goto ret0;

 L20703: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L20704;
    }
  goto ret0;

 L20704: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L20705;
    }
  goto ret0;

 L20705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20706;
    }
  goto ret0;

 L20706: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20707;
  goto ret0;

 L20707: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20708;
    }
  goto ret0;

 L20708: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ))))
    {
      return 2027;  /* ufloatv8div8df2_mask_round */
    }
  goto ret0;

 L21871: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L21872;
    }
  goto ret0;

 L21872: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L21873;
    }
  goto ret0;

 L21873: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21874;
    }
  goto ret0;

 L21874: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21875;
  goto ret0;

 L21875: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21876;
    }
  goto ret0;

 L21876: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))))
    {
      return 2172;  /* avx512f_cvtps2pd512_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_149 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 3:
      goto L64592;
    case 2:
      goto L64593;
    case 1:
      goto L64594;
    case 4:
      goto L64595;
    default:
      break;
    }
  goto ret0;

 L64592: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 123LL:
      goto L18719;
    case 145LL:
      goto L47050;
    case 190LL:
      goto L50737;
    default:
      break;
    }
  goto ret0;

 L18719: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L18720;
    }
  goto ret0;

 L18720: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L18721;
    }
  goto ret0;

 L18721: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L64604;
  goto ret0;

 L64604: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L19203;
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L18722;
    }
  goto ret0;

 L19203: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L19204;
    }
  goto ret0;

 L19204: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19205;
  goto ret0;

 L19205: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19206;
    }
  goto ret0;

 L19206: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3596 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1863;  /* *fma_fmsubadd_v8df_round */
    }
  goto ret0;

 L18722: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18723;
  goto ret0;

 L18723: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18724;
    }
  goto ret0;

 L18724: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1817;  /* *fma_fmaddsub_v8df_round */
    }
  goto ret0;

 L47050: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L47051;
    }
  if (GET_CODE (x3) == PC)
    goto L47651;
  goto ret0;

 L47051: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47052;
    }
  goto ret0;

 L47052: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[6] = x3;
      goto L47053;
    }
  goto ret0;

 L47053: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64605;
    case DImode:
      goto L64606;
    default:
      break;
    }
  goto ret0;

 L64605: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47054;
  goto ret0;

 L47054: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47055;
    }
  goto ret0;

 L47055: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64607;
    case V8DImode:
      goto L64608;
    default:
      break;
    }
  goto ret0;

 L64607: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47056;
    }
  goto ret0;

 L47056: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47057;
    }
  goto ret0;

 L47057: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47058;
  goto ret0;

 L47058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47059;
    }
  goto ret0;

 L47059: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4407;  /* *avx512f_gathersiv8df */
    }
  goto ret0;

 L64608: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48256;
    }
  goto ret0;

 L48256: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48257;
    }
  goto ret0;

 L48257: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48258;
  goto ret0;

 L48258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48259;
    }
  goto ret0;

 L48259: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4455;  /* *avx512f_gatherdiv8df */
    }
  goto ret0;

 L64606: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47079;
  goto ret0;

 L47079: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47080;
    }
  goto ret0;

 L47080: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64609;
    case V8DImode:
      goto L64610;
    default:
      break;
    }
  goto ret0;

 L64609: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47081;
    }
  goto ret0;

 L47081: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47082;
    }
  goto ret0;

 L47082: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47083;
  goto ret0;

 L47083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47084;
    }
  goto ret0;

 L47084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4408;  /* *avx512f_gathersiv8df */
    }
  goto ret0;

 L64610: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48281;
    }
  goto ret0;

 L48281: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48282;
    }
  goto ret0;

 L48282: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48283;
  goto ret0;

 L48283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48284;
    }
  goto ret0;

 L48284: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4456;  /* *avx512f_gatherdiv8df */
    }
  goto ret0;

 L47651: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47652;
    }
  goto ret0;

 L47652: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[5] = x3;
      goto L47653;
    }
  goto ret0;

 L47653: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64611;
    case DImode:
      goto L64612;
    default:
      break;
    }
  goto ret0;

 L64611: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47654;
  goto ret0;

 L47654: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47655;
    }
  goto ret0;

 L47655: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64613;
    case V8DImode:
      goto L64614;
    default:
      break;
    }
  goto ret0;

 L64613: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47656;
    }
  goto ret0;

 L47656: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47657;
    }
  goto ret0;

 L47657: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47658;
  goto ret0;

 L47658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47659;
    }
  goto ret0;

 L47659: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4431;  /* *avx512f_gathersiv8df_2 */
    }
  goto ret0;

 L64614: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48856;
    }
  goto ret0;

 L48856: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48857;
    }
  goto ret0;

 L48857: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48858;
  goto ret0;

 L48858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48859;
    }
  goto ret0;

 L48859: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4479;  /* *avx512f_gatherdiv8df_2 */
    }
  goto ret0;

 L64612: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47679;
  goto ret0;

 L47679: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47680;
    }
  goto ret0;

 L47680: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64615;
    case V8DImode:
      goto L64616;
    default:
      break;
    }
  goto ret0;

 L64615: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47681;
    }
  goto ret0;

 L47681: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47682;
    }
  goto ret0;

 L47682: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47683;
  goto ret0;

 L47683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47684;
    }
  goto ret0;

 L47684: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4432;  /* *avx512f_gathersiv8df_2 */
    }
  goto ret0;

 L64616: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48881;
    }
  goto ret0;

 L48881: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48882;
    }
  goto ret0;

 L48882: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48883;
  goto ret0;

 L48883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48884;
    }
  goto ret0;

 L48884: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4480;  /* *avx512f_gatherdiv8df_2 */
    }
  goto ret0;

 L50737: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L50738;
    }
  goto ret0;

 L50738: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L50739;
    }
  goto ret0;

 L50739: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L50740;
    }
  goto ret0;

 L50740: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50741;
  goto ret0;

 L50741: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L50742;
    }
  goto ret0;

 L50742: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 18413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode))))
    {
      return 4590;  /* avx512dq_rangepv8df_round */
    }
  goto ret0;

 L64593: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23899;
    case 82LL:
      goto L25215;
    case 161LL:
      goto L51060;
    default:
      break;
    }
  goto ret0;

 L23899: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L23900;
    }
  goto ret0;

 L23900: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L23901;
    }
  goto ret0;

 L23901: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23902;
  goto ret0;

 L23902: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23903;
    }
  goto ret0;

 L23903: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2345;  /* avx512f_scalefv8df_round */
    }
  goto ret0;

 L25215: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L25216;
    }
  goto ret0;

 L25216: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25217;
    }
  goto ret0;

 L25217: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25218;
  goto ret0;

 L25218: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25219;
    }
  goto ret0;

 L25219: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2475;  /* avx512f_rndscalev8df_round */
    }
  goto ret0;

 L51060: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L51061;
    }
  goto ret0;

 L51061: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51062;
    }
  goto ret0;

 L51062: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51063;
  goto ret0;

 L51063: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51064;
    }
  goto ret0;

 L51064: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 4628;  /* avx512f_getmantv8df_round */
    }
  goto ret0;

 L64594: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 160LL:
      goto L24282;
    case 172LL:
      goto L39562;
    case 173LL:
      goto L39626;
    case 174LL:
      goto L39726;
    default:
      break;
    }
  goto ret0;

 L24282: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L24283;
    }
  goto ret0;

 L24283: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24284;
  goto ret0;

 L24284: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L24285;
    }
  goto ret0;

 L24285: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2387;  /* avx512f_getexpv8df_round */
    }
  goto ret0;

 L39562: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L39563;
    }
  goto ret0;

 L39563: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39564;
  goto ret0;

 L39564: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39565;
    }
  goto ret0;

 L39565: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15376 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3736;  /* avx512er_exp2v8df_round */
    }
  goto ret0;

 L39626: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L39627;
    }
  goto ret0;

 L39627: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39628;
  goto ret0;

 L39628: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39629;
    }
  goto ret0;

 L39629: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15387 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3744;  /* *avx512er_rcp28v8df_round */
    }
  goto ret0;

 L39726: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L39727;
    }
  goto ret0;

 L39727: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39728;
  goto ret0;

 L39728: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L39729;
    }
  goto ret0;

 L39729: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 15413 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER)))
    {
      return 3756;  /* *avx512er_rsqrt28v8df_round */
    }
  goto ret0;

 L64595: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 157)
    goto L24655;
  goto ret0;

 L24655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L24656;
    }
  goto ret0;

 L24656: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L24657;
    }
  goto ret0;

 L24657: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L24658;
    }
  goto ret0;

 L24658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24659;
    }
  goto ret0;

 L24659: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24660;
  goto ret0;

 L24660: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24661;
    }
  goto ret0;

 L24661: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2427;  /* avx512f_fixupimmv8df_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_150 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (vsib_mem_operator (x2, V8DFmode))
    {
      operands[5] = x2;
      goto L49437;
    }
  if (register_operand (x2, V8DFmode))
    {
      operands[0] = x2;
      goto L12508;
    }
  goto ret0;

 L49437: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64475;
    case DImode:
      goto L64476;
    default:
      break;
    }
  goto ret0;

 L64475: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49438;
  goto ret0;

 L49438: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49439;
    }
  goto ret0;

 L49439: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64477;
    case V8DImode:
      goto L64478;
    default:
      break;
    }
  goto ret0;

 L64477: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49440;
    }
  goto ret0;

 L49440: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49441;
    }
  goto ret0;

 L49441: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49442;
  goto ret0;

 L49442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49443;
    }
  goto ret0;

 L49443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L49444;
    }
  goto ret0;

 L49444: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49445;
  goto ret0;

 L49445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49446;
    }
  goto ret0;

 L49446: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4503;  /* *avx512f_scattersiv8df */
    }
  goto ret0;

 L64478: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49992;
    }
  goto ret0;

 L49992: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49993;
    }
  goto ret0;

 L49993: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49994;
  goto ret0;

 L49994: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49995;
    }
  goto ret0;

 L49995: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L49996;
    }
  goto ret0;

 L49996: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49997;
  goto ret0;

 L49997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49998;
    }
  goto ret0;

 L49998: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4527;  /* *avx512f_scatterdiv8df */
    }
  goto ret0;

 L64476: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49461;
  goto ret0;

 L49461: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49462;
    }
  goto ret0;

 L49462: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64479;
    case V8DImode:
      goto L64480;
    default:
      break;
    }
  goto ret0;

 L64479: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49463;
    }
  goto ret0;

 L49463: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49464;
    }
  goto ret0;

 L49464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49465;
  goto ret0;

 L49465: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49466;
    }
  goto ret0;

 L49466: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L49467;
    }
  goto ret0;

 L49467: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49468;
  goto ret0;

 L49468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49469;
    }
  goto ret0;

 L49469: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4504;  /* *avx512f_scattersiv8df */
    }
  goto ret0;

 L64480: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L50015;
    }
  goto ret0;

 L50015: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50016;
    }
  goto ret0;

 L50016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50017;
  goto ret0;

 L50017: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50018;
    }
  goto ret0;

 L50018: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L50019;
    }
  goto ret0;

 L50019: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50020;
  goto ret0;

 L50020: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50021;
    }
  goto ret0;

 L50021: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4528;  /* *avx512f_scatterdiv8df */
    }
  goto ret0;

 L12508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DFmode)
    goto L64482;
  goto ret0;

 L64482: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L12755;
    case VEC_MERGE:
      goto L12773;
    case MINUS:
      goto L12791;
    case MULT:
      goto L13159;
    case DIV:
      goto L13413;
    case SQRT:
      goto L13645;
    case SMAX:
      goto L14065;
    case SMIN:
      goto L14101;
    case FMA:
      goto L16721;
    case UNSPEC:
      goto L64505;
    case FLOAT:
      goto L20654;
    case UNSIGNED_FLOAT:
      goto L20686;
    case FLOAT_EXTEND:
      goto L21854;
    case NEG:
    case ABS:
      goto L64481;
    default:
      goto ret0;
   }
 L64481: ATTRIBUTE_UNUSED_LABEL
  if (absneg_operator (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L12509;
    }
  goto ret0;

 L12755: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12756;
    }
  goto ret0;

 L12756: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L12757;
    }
  goto ret0;

 L12757: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12758;
  goto ret0;

 L12758: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12759;
    }
  goto ret0;

 L12759: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands) && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1189;  /* *addv8df3_round */
    }
  goto ret0;

 L12773: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L64516;
  goto ret0;

 L64516: ATTRIBUTE_UNUSED_LABEL
  return recog_148 (x0, insn, pnum_clobbers);

 L12791: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12792;
    }
  goto ret0;

 L12792: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L12793;
    }
  goto ret0;

 L12793: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12794;
  goto ret0;

 L12794: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12795;
    }
  goto ret0;

 L12795: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands) && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1193;  /* *subv8df3_round */
    }
  goto ret0;

 L13159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13160;
    }
  goto ret0;

 L13160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L13161;
    }
  goto ret0;

 L13161: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13162;
  goto ret0;

 L13162: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13163;
    }
  goto ret0;

 L13163: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands) && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1233;  /* *mulv8df3_round */
    }
  goto ret0;

 L13413: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13414;
    }
  goto ret0;

 L13414: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L13415;
    }
  goto ret0;

 L13415: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13416;
  goto ret0;

 L13416: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13417;
    }
  goto ret0;

 L13417: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1712 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1261;  /* avx512f_divv8df3_round */
    }
  goto ret0;

 L13645: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L13646;
    }
  goto ret0;

 L13646: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13647;
  goto ret0;

 L13647: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L13648;
    }
  goto ret0;

 L13648: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1801 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1294;  /* avx512f_sqrtv8df2_round */
    }
  goto ret0;

 L14065: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L14066;
    }
  goto ret0;

 L14066: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L14067;
    }
  goto ret0;

 L14067: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14068;
  goto ret0;

 L14068: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14069;
    }
  goto ret0;

 L14069: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V8DFmode, operands)
   && 1 && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1347;  /* *smaxv8df3_finite_round */
    }
 L14417: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1387;  /* *smaxv8df3_round */
    }
  goto ret0;

 L14101: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L14102;
    }
  goto ret0;

 L14102: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L14103;
    }
  goto ret0;

 L14103: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14104;
  goto ret0;

 L14104: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14105;
    }
  goto ret0;

 L14105: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V8DFmode, operands)
   && 1 && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1351;  /* *sminv8df3_finite_round */
    }
 L14453: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1927 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !flag_finite_math_only
   && 1 && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 1391;  /* *sminv8df3_round */
    }
  goto ret0;

 L16721: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DFmode)
    goto L64587;
  goto ret0;

 L64587: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17639;
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L16722;
    }
  goto ret0;

 L17639: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L17640;
    }
  goto ret0;

 L17640: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L17641;
    }
  goto ret0;

 L17641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L64589;
  goto ret0;

 L64589: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L18255;
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L17642;
    }
  goto ret0;

 L18255: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L18256;
    }
  goto ret0;

 L18256: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18257;
  goto ret0;

 L18257: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18258;
    }
  goto ret0;

 L18258: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3424 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1775;  /* *fma_fnmsub_v8df_round */
    }
  goto ret0;

 L17642: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17643;
  goto ret0;

 L17643: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17644;
    }
  goto ret0;

 L17644: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3355 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1721;  /* *fma_fnmadd_v8df_round */
    }
  goto ret0;

 L16722: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L16723;
    }
  goto ret0;

 L16723: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V8DFmode)
    goto L64591;
  goto ret0;

 L64591: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L17169;
  if (register_operand (x3, V8DFmode))
    {
      operands[3] = x3;
      goto L16724;
    }
  goto ret0;

 L17169: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[3] = x4;
      goto L17170;
    }
  goto ret0;

 L17170: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17171;
  goto ret0;

 L17171: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17172;
    }
  goto ret0;

 L17172: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1677;  /* *fma_fmsub_v8df_round */
    }
  goto ret0;

 L16724: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16725;
  goto ret0;

 L16725: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L16726;
    }
  goto ret0;

 L16726: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3223 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 1633;  /* *fma_fmadd_v8df_round */
    }
  goto ret0;

 L64505: ATTRIBUTE_UNUSED_LABEL
  return recog_149 (x0, insn, pnum_clobbers);

 L20654: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20655;
    }
  goto ret0;

 L20655: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20656;
  goto ret0;

 L20656: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20657;
    }
  goto ret0;

 L20657: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 2021;  /* floatv8div8df2_round */
    }
  goto ret0;

 L20686: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L20687;
    }
  goto ret0;

 L20687: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20688;
  goto ret0;

 L20688: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20689;
    }
  goto ret0;

 L20689: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ)))
    {
      return 2025;  /* ufloatv8div8df2_round */
    }
  goto ret0;

 L21854: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21855;
    }
  goto ret0;

 L21855: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21856;
  goto ret0;

 L21856: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21857;
    }
  goto ret0;

 L21857: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && 1 && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)) && 
#line 244 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F))))
    {
      return 2170;  /* avx512f_cvtps2pd512_round */
    }
  goto ret0;

 L12509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L12510;
    }
  goto ret0;

 L12510: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L12511;
  goto ret0;

 L12511: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L12512;
    }
  goto ret0;

 L12512: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)))
    {
      return 1161;  /* *absnegv8df2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_151 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L12846;
    case MINUS:
      goto L12882;
    case MULT:
      goto L13214;
    case SMAX:
      goto L14156;
    case SMIN:
      goto L14192;
    case FMA:
      goto L16977;
    case UNSPEC:
      goto L64661;
    case FLOAT:
      goto L20735;
    case UNSIGNED_FLOAT:
      goto L20767;
    default:
     break;
   }
  goto ret0;

 L12846: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L12847;
    }
  goto ret0;

 L12847: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L12848;
    }
  goto ret0;

 L12848: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L12849;
    }
  goto ret0;

 L12849: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12850;
    }
  goto ret0;

 L12850: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12851;
  goto ret0;

 L12851: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12852;
    }
  goto ret0;

 L12852: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands) && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
							      || V4DFmode == V8DFmode
							      || V4DFmode == V8DImode
							      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1199;  /* *addv4df3_mask_round */
    }
  goto ret0;

 L12882: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L12883;
    }
  goto ret0;

 L12883: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L12884;
    }
  goto ret0;

 L12884: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L12885;
    }
  goto ret0;

 L12885: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12886;
    }
  goto ret0;

 L12886: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12887;
  goto ret0;

 L12887: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12888;
    }
  goto ret0;

 L12888: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands) && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
							      || V4DFmode == V8DFmode
							      || V4DFmode == V8DImode
							      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1203;  /* *subv4df3_mask_round */
    }
  goto ret0;

 L13214: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L13215;
    }
  goto ret0;

 L13215: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L13216;
    }
  goto ret0;

 L13216: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L13217;
    }
  goto ret0;

 L13217: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13218;
    }
  goto ret0;

 L13218: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13219;
  goto ret0;

 L13219: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13220;
    }
  goto ret0;

 L13220: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands) && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
							      || V4DFmode == V8DFmode
							      || V4DFmode == V8DImode
							      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1239;  /* *mulv4df3_mask_round */
    }
  goto ret0;

 L14156: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L14157;
    }
  goto ret0;

 L14157: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L14158;
    }
  goto ret0;

 L14158: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L14159;
    }
  goto ret0;

 L14159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14160;
    }
  goto ret0;

 L14160: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14161;
  goto ret0;

 L14161: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14162;
    }
  goto ret0;

 L14162: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4DFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
									      || V4DFmode == V8DFmode
									      || V4DFmode == V8DImode
									      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1357;  /* *smaxv4df3_finite_mask_round */
    }
  goto ret0;

 L14192: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L14193;
    }
  goto ret0;

 L14193: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L14194;
    }
  goto ret0;

 L14194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L14195;
    }
  goto ret0;

 L14195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14196;
    }
  goto ret0;

 L14196: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14197;
  goto ret0;

 L14197: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14198;
    }
  goto ret0;

 L14198: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4DFmode, operands)
   && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
									      || V4DFmode == V8DFmode
									      || V4DFmode == V8DImode
									      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))))
    {
      return 1361;  /* *sminv4df3_finite_mask_round */
    }
  goto ret0;

 L16977: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V4DFmode)
    goto L64668;
  goto ret0;

 L64668: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18121;
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L16978;
    }
  goto ret0;

 L18121: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4DFmode)
    goto L64669;
  goto ret0;

 L64669: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V4DFmode))
    {
      operands[1] = x5;
      goto L18122;
    }
 L64670: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DFmode))
    {
      operands[1] = x5;
      goto L18557;
    }
  goto ret0;

 L18122: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L18123;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18123: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4DFmode
      && GET_CODE (x4) == NEG)
    goto L18124;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18124: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4DFmode))
    {
      operands[3] = x5;
      goto L18125;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18125: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V4DFmode))
    {
      operands[4] = x3;
      goto L18126;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18126: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L18127;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18127: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18128;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18128: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18129;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18129: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1763;  /* *fma_fnmsub_v4df */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64670;

 L18557: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L18558;
    }
  goto ret0;

 L18558: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4DFmode
      && GET_CODE (x4) == NEG)
    goto L18559;
  goto ret0;

 L18559: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4DFmode))
    {
      operands[3] = x5;
      goto L18560;
    }
  goto ret0;

 L18560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18561;
  goto ret0;

 L18561: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18562;
    }
  goto ret0;

 L18562: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18563;
  goto ret0;

 L18563: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18564;
    }
  goto ret0;

 L18564: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1799;  /* avx512vl_fnmsub_v4df_mask3_round */
    }
  goto ret0;

 L16978: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L16979;
    }
  goto ret0;

 L16979: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V4DFmode)
    goto L64672;
  goto ret0;

 L64672: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17355;
  if (register_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L16980;
    }
  goto ret0;

 L17355: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V4DFmode))
    {
      operands[3] = x5;
      goto L17356;
    }
  goto ret0;

 L17356: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17357;
  goto ret0;

 L17357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17358;
    }
  goto ret0;

 L17358: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17359;
  goto ret0;

 L17359: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17360;
    }
  goto ret0;

 L17360: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1693;  /* avx512vl_fmsub_v4df_mask_round */
    }
  goto ret0;

 L16980: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L16981;
  goto ret0;

 L16981: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L16982;
    }
  goto ret0;

 L16982: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16983;
  goto ret0;

 L16983: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L16984;
    }
  goto ret0;

 L16984: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1657;  /* avx512vl_fmadd_v4df_mask3_round */
    }
  goto ret0;

 L64661: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x3, 0))
    {
    case 3:
      goto L64673;
    case 2:
      goto L64674;
    case 1:
      goto L64675;
    case 4:
      goto L64676;
    default:
      break;
    }
  goto ret0;

 L64673: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 123)
    goto L18889;
  goto ret0;

 L18889: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L18890;
    }
  goto ret0;

 L18890: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L18891;
    }
  goto ret0;

 L18891: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V4DFmode)
    goto L64681;
  goto ret0;

 L64681: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19389;
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L18892;
    }
 L64680: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L19030;
    }
  goto ret0;

 L19389: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V4DFmode)
    goto L64682;
  goto ret0;

 L64682: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V4DFmode))
    {
      operands[3] = x5;
      goto L19390;
    }
 L64683: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DFmode))
    {
      operands[3] = x5;
      goto L19540;
    }
  goto ret0;

 L19390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19391;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64683;

 L19391: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19392;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64683;

 L19392: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19393;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64683;

 L19393: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19394;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64683;

 L19394: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1879;  /* avx512vl_fmsubadd_v4df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64683;

 L19540: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19541;
  goto ret0;

 L19541: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19542;
    }
  goto ret0;

 L19542: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19543;
  goto ret0;

 L19543: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19544;
    }
  goto ret0;

 L19544: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1891;  /* avx512vl_fmsubadd_v4df_mask3_round */
    }
  goto ret0;

 L18892: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18893;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64680;

 L18893: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18894;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64680;

 L18894: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18895;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64680;

 L18895: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18896;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64680;

 L18896: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1833;  /* avx512vl_fmaddsub_v4df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64680;

 L19030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19031;
  goto ret0;

 L19031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19032;
    }
  goto ret0;

 L19032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19033;
  goto ret0;

 L19033: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19034;
    }
  goto ret0;

 L19034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1845;  /* avx512vl_fmaddsub_v4df_mask3_round */
    }
  goto ret0;

 L64674: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 158LL:
      goto L23954;
    case 82LL:
      goto L25270;
    case 161LL:
      goto L51115;
    default:
      break;
    }
  goto ret0;

 L23954: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L23955;
    }
  goto ret0;

 L23955: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L23956;
    }
  goto ret0;

 L23956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L23957;
    }
  goto ret0;

 L23957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L23958;
    }
  goto ret0;

 L23958: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23959;
  goto ret0;

 L23959: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L23960;
    }
  goto ret0;

 L23960: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2351;  /* avx512vl_scalefv4df_mask_round */
    }
  goto ret0;

 L25270: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L25271;
    }
  goto ret0;

 L25271: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L25272;
    }
  goto ret0;

 L25272: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L25273;
    }
  goto ret0;

 L25273: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L25274;
    }
  goto ret0;

 L25274: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25275;
  goto ret0;

 L25275: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25276;
    }
  goto ret0;

 L25276: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2481;  /* avx512vl_rndscalev4df_mask_round */
    }
  goto ret0;

 L51115: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L51116;
    }
  goto ret0;

 L51116: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L51117;
    }
  goto ret0;

 L51117: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L51118;
    }
  goto ret0;

 L51118: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L51119;
    }
  goto ret0;

 L51119: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51120;
  goto ret0;

 L51120: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L51121;
    }
  goto ret0;

 L51121: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 4634;  /* avx512vl_getmantv4df_mask_round */
    }
  goto ret0;

 L64675: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 160)
    goto L24331;
  goto ret0;

 L24331: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L24332;
    }
  goto ret0;

 L24332: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L24333;
    }
  goto ret0;

 L24333: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L24334;
    }
  goto ret0;

 L24334: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24335;
  goto ret0;

 L24335: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24336;
    }
  goto ret0;

 L24336: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2393;  /* avx512vl_getexpv4df_mask_round */
    }
  goto ret0;

 L64676: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 157)
    goto L24722;
  goto ret0;

 L24722: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L24723;
    }
  goto ret0;

 L24723: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4DFmode))
    {
      operands[2] = x4;
      goto L24724;
    }
  goto ret0;

 L24724: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (nonimmediate_operand (x4, V4DImode))
    {
      operands[3] = x4;
      goto L24725;
    }
  goto ret0;

 L24725: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24726;
    }
  goto ret0;

 L24726: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V4DFmode))
    {
      operands[5] = x3;
      goto L24727;
    }
 L24895: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L24896;
  goto ret0;

 L24727: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L24728;
    }
  x3 = XEXP (x2, 1);
  goto L24895;

 L24728: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24729;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24895;

 L24729: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24730;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24895;

 L24730: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2433;  /* avx512vl_fixupimmv4df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24895;

 L24896: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L24897;
    }
  goto ret0;

 L24897: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24898;
  goto ret0;

 L24898: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L24899;
    }
  goto ret0;

 L24899: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2447;  /* avx512vl_fixupimmv4df_mask_round */
    }
  goto ret0;

 L20735: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L20736;
    }
  goto ret0;

 L20736: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L20737;
    }
  goto ret0;

 L20737: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20738;
    }
  goto ret0;

 L20738: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20739;
  goto ret0;

 L20739: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20740;
    }
  goto ret0;

 L20740: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2031;  /* floatv4div4df2_mask_round */
    }
  goto ret0;

 L20767: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DImode))
    {
      operands[1] = x4;
      goto L20768;
    }
  goto ret0;

 L20768: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L20769;
    }
  goto ret0;

 L20769: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20770;
    }
  goto ret0;

 L20770: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20771;
  goto ret0;

 L20771: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20772;
    }
  goto ret0;

 L20772: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2035;  /* ufloatv4div4df2_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_152 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L64684;
    case 1:
      goto L64685;
    case 4:
      goto L64686;
    case 3:
      goto L64689;
    default:
      break;
    }
  goto ret0;

 L64684: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23935;
    case 82LL:
      goto L25251;
    case 161LL:
      goto L51096;
    default:
      break;
    }
  goto ret0;

 L23935: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L23936;
    }
  goto ret0;

 L23936: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L23937;
    }
  goto ret0;

 L23937: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23938;
  goto ret0;

 L23938: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23939;
    }
  goto ret0;

 L23939: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2349;  /* avx512vl_scalefv4df_round */
    }
  goto ret0;

 L25251: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L25252;
    }
  goto ret0;

 L25252: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25253;
    }
  goto ret0;

 L25253: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25254;
  goto ret0;

 L25254: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25255;
    }
  goto ret0;

 L25255: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2479;  /* avx512vl_rndscalev4df_round */
    }
  goto ret0;

 L51096: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L51097;
    }
  goto ret0;

 L51097: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51098;
    }
  goto ret0;

 L51098: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51099;
  goto ret0;

 L51099: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51100;
    }
  goto ret0;

 L51100: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4632;  /* avx512vl_getmantv4df_round */
    }
  goto ret0;

 L64685: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 160)
    goto L24314;
  goto ret0;

 L24314: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L24315;
    }
  goto ret0;

 L24315: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24316;
  goto ret0;

 L24316: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L24317;
    }
  goto ret0;

 L24317: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2391;  /* avx512vl_getexpv4df_round */
    }
  goto ret0;

 L64686: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 157LL:
      goto L24699;
    case 145LL:
      goto L44898;
    default:
      break;
    }
  goto ret0;

 L24699: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L24700;
    }
  goto ret0;

 L24700: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L24701;
    }
  goto ret0;

 L24701: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L24702;
    }
  goto ret0;

 L24702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24703;
    }
  goto ret0;

 L24703: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24704;
  goto ret0;

 L24704: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24705;
    }
  goto ret0;

 L24705: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2431;  /* avx512vl_fixupimmv4df_round */
    }
  goto ret0;

 L44898: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L44899;
    }
  if (GET_CODE (x3) == PC)
    goto L45363;
  goto ret0;

 L44899: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[7] = x3;
      goto L44900;
    }
  goto ret0;

 L44900: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64691;
    case DImode:
      goto L64692;
    default:
      break;
    }
  goto ret0;

 L64691: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44901;
  goto ret0;

 L44901: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L44902;
    }
  goto ret0;

 L44902: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64693;
    case V4DImode:
      goto L64694;
    default:
      break;
    }
  goto ret0;

 L64693: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44903;
    }
  goto ret0;

 L44903: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44904;
    }
  goto ret0;

 L44904: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44905;
  goto ret0;

 L44905: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44906;
  goto ret0;

 L44906: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[5] = x3;
      goto L44907;
    }
  goto ret0;

 L44907: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44908;
  goto ret0;

 L44908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L44909;
    }
  goto ret0;

 L44909: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4335;  /* *avx2_gathersiv4df */
    }
  goto ret0;

 L64694: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L45831;
    }
  goto ret0;

 L45831: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45832;
    }
  goto ret0;

 L45832: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45833;
  goto ret0;

 L45833: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45834;
  goto ret0;

 L45834: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[5] = x3;
      goto L45835;
    }
  goto ret0;

 L45835: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45836;
  goto ret0;

 L45836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L45837;
    }
  goto ret0;

 L45837: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4367;  /* *avx2_gatherdiv4df */
    }
  goto ret0;

 L64692: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44930;
  goto ret0;

 L44930: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L44931;
    }
  goto ret0;

 L44931: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64695;
    case V4DImode:
      goto L64696;
    default:
      break;
    }
  goto ret0;

 L64695: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44932;
    }
  goto ret0;

 L44932: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44933;
    }
  goto ret0;

 L44933: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44934;
  goto ret0;

 L44934: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44935;
  goto ret0;

 L44935: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[5] = x3;
      goto L44936;
    }
  goto ret0;

 L44936: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44937;
  goto ret0;

 L44937: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L44938;
    }
  goto ret0;

 L44938: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4336;  /* *avx2_gathersiv4df */
    }
  goto ret0;

 L64696: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L45860;
    }
  goto ret0;

 L45860: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45861;
    }
  goto ret0;

 L45861: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45862;
  goto ret0;

 L45862: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45863;
  goto ret0;

 L45863: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[5] = x3;
      goto L45864;
    }
  goto ret0;

 L45864: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45865;
  goto ret0;

 L45865: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L45866;
    }
  goto ret0;

 L45866: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4368;  /* *avx2_gatherdiv4df */
    }
  goto ret0;

 L45363: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[6] = x3;
      goto L45364;
    }
  goto ret0;

 L45364: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64697;
    case DImode:
      goto L64698;
    default:
      break;
    }
  goto ret0;

 L64697: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45365;
  goto ret0;

 L45365: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45366;
    }
  goto ret0;

 L45366: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64699;
    case V4DImode:
      goto L64700;
    default:
      break;
    }
  goto ret0;

 L64699: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45367;
    }
  goto ret0;

 L45367: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45368;
    }
  goto ret0;

 L45368: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45369;
  goto ret0;

 L45369: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45370;
  goto ret0;

 L45370: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[4] = x3;
      goto L45371;
    }
  goto ret0;

 L45371: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45372;
  goto ret0;

 L45372: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L45373;
    }
  goto ret0;

 L45373: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4351;  /* *avx2_gathersiv4df_2 */
    }
  goto ret0;

 L64700: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46295;
    }
  goto ret0;

 L46295: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46296;
    }
  goto ret0;

 L46296: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46297;
  goto ret0;

 L46297: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46298;
  goto ret0;

 L46298: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[4] = x3;
      goto L46299;
    }
  goto ret0;

 L46299: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46300;
  goto ret0;

 L46300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L46301;
    }
  goto ret0;

 L46301: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4383;  /* *avx2_gatherdiv4df_2 */
    }
  goto ret0;

 L64698: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45394;
  goto ret0;

 L45394: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45395;
    }
  goto ret0;

 L45395: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64701;
    case V4DImode:
      goto L64702;
    default:
      break;
    }
  goto ret0;

 L64701: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45396;
    }
  goto ret0;

 L45396: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45397;
    }
  goto ret0;

 L45397: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45398;
  goto ret0;

 L45398: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45399;
  goto ret0;

 L45399: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[4] = x3;
      goto L45400;
    }
  goto ret0;

 L45400: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45401;
  goto ret0;

 L45401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L45402;
    }
  goto ret0;

 L45402: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4352;  /* *avx2_gathersiv4df_2 */
    }
  goto ret0;

 L64702: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46324;
    }
  goto ret0;

 L46324: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46325;
    }
  goto ret0;

 L46325: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46326;
  goto ret0;

 L46326: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46327;
  goto ret0;

 L46327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DFmode))
    {
      operands[4] = x3;
      goto L46328;
    }
  goto ret0;

 L46328: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46329;
  goto ret0;

 L46329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L46330;
    }
  goto ret0;

 L46330: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4384;  /* *avx2_gatherdiv4df_2 */
    }
  goto ret0;

 L64689: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47250;
  goto ret0;

 L47250: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L47251;
    }
  if (GET_CODE (x3) == PC)
    goto L47851;
  goto ret0;

 L47251: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47252;
    }
  goto ret0;

 L47252: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[6] = x3;
      goto L47253;
    }
  goto ret0;

 L47253: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64703;
    case DImode:
      goto L64704;
    default:
      break;
    }
  goto ret0;

 L64703: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47254;
  goto ret0;

 L47254: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47255;
    }
  goto ret0;

 L47255: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64705;
    case V4DImode:
      goto L64706;
    default:
      break;
    }
  goto ret0;

 L64705: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47256;
    }
  goto ret0;

 L47256: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47257;
    }
  goto ret0;

 L47257: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47258;
  goto ret0;

 L47258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47259;
    }
  goto ret0;

 L47259: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4415;  /* *avx512f_gathersiv4df */
    }
  goto ret0;

 L64706: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48456;
    }
  goto ret0;

 L48456: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48457;
    }
  goto ret0;

 L48457: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48458;
  goto ret0;

 L48458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48459;
    }
  goto ret0;

 L48459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4463;  /* *avx512f_gatherdiv4df */
    }
  goto ret0;

 L64704: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47279;
  goto ret0;

 L47279: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47280;
    }
  goto ret0;

 L47280: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64707;
    case V4DImode:
      goto L64708;
    default:
      break;
    }
  goto ret0;

 L64707: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47281;
    }
  goto ret0;

 L47281: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47282;
    }
  goto ret0;

 L47282: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47283;
  goto ret0;

 L47283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47284;
    }
  goto ret0;

 L47284: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4416;  /* *avx512f_gathersiv4df */
    }
  goto ret0;

 L64708: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48481;
    }
  goto ret0;

 L48481: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48482;
    }
  goto ret0;

 L48482: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48483;
  goto ret0;

 L48483: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48484;
    }
  goto ret0;

 L48484: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4464;  /* *avx512f_gatherdiv4df */
    }
  goto ret0;

 L47851: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47852;
    }
  goto ret0;

 L47852: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[5] = x3;
      goto L47853;
    }
  goto ret0;

 L47853: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64709;
    case DImode:
      goto L64710;
    default:
      break;
    }
  goto ret0;

 L64709: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47854;
  goto ret0;

 L47854: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47855;
    }
  goto ret0;

 L47855: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64711;
    case V4DImode:
      goto L64712;
    default:
      break;
    }
  goto ret0;

 L64711: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47856;
    }
  goto ret0;

 L47856: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47857;
    }
  goto ret0;

 L47857: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47858;
  goto ret0;

 L47858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47859;
    }
  goto ret0;

 L47859: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4439;  /* *avx512f_gathersiv4df_2 */
    }
  goto ret0;

 L64712: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L49056;
    }
  goto ret0;

 L49056: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49057;
    }
  goto ret0;

 L49057: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49058;
  goto ret0;

 L49058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49059;
    }
  goto ret0;

 L49059: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4487;  /* *avx512f_gatherdiv4df_2 */
    }
  goto ret0;

 L64710: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47879;
  goto ret0;

 L47879: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47880;
    }
  goto ret0;

 L47880: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64713;
    case V4DImode:
      goto L64714;
    default:
      break;
    }
  goto ret0;

 L64713: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47881;
    }
  goto ret0;

 L47881: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47882;
    }
  goto ret0;

 L47882: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47883;
  goto ret0;

 L47883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47884;
    }
  goto ret0;

 L47884: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4440;  /* *avx512f_gathersiv4df_2 */
    }
  goto ret0;

 L64714: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L49081;
    }
  goto ret0;

 L49081: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49082;
    }
  goto ret0;

 L49082: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49083;
  goto ret0;

 L49083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49084;
    }
  goto ret0;

 L49084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4488;  /* *avx512f_gatherdiv4df_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_153 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (vsib_mem_operator (x2, V4DFmode))
    {
      operands[5] = x2;
      goto L49621;
    }
  if (register_operand (x2, V4DFmode))
    {
      operands[0] = x2;
      goto L12516;
    }
  goto ret0;

 L49621: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64617;
    case DImode:
      goto L64618;
    default:
      break;
    }
  goto ret0;

 L64617: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49622;
  goto ret0;

 L49622: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49623;
    }
  goto ret0;

 L49623: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64619;
    case V4DImode:
      goto L64620;
    default:
      break;
    }
  goto ret0;

 L64619: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49624;
    }
  goto ret0;

 L49624: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49625;
    }
  goto ret0;

 L49625: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49626;
  goto ret0;

 L49626: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49627;
    }
  goto ret0;

 L49627: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L49628;
    }
  goto ret0;

 L49628: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49629;
  goto ret0;

 L49629: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49630;
    }
  goto ret0;

 L49630: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4511;  /* *avx512f_scattersiv4df */
    }
  goto ret0;

 L64620: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50176;
    }
  goto ret0;

 L50176: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50177;
    }
  goto ret0;

 L50177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50178;
  goto ret0;

 L50178: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50179;
    }
  goto ret0;

 L50179: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L50180;
    }
  goto ret0;

 L50180: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50181;
  goto ret0;

 L50181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50182;
    }
  goto ret0;

 L50182: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4535;  /* *avx512f_scatterdiv4df */
    }
  goto ret0;

 L64618: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49645;
  goto ret0;

 L49645: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49646;
    }
  goto ret0;

 L49646: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64621;
    case V4DImode:
      goto L64622;
    default:
      break;
    }
  goto ret0;

 L64621: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49647;
    }
  goto ret0;

 L49647: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49648;
    }
  goto ret0;

 L49648: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49649;
  goto ret0;

 L49649: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49650;
    }
  goto ret0;

 L49650: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L49651;
    }
  goto ret0;

 L49651: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49652;
  goto ret0;

 L49652: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49653;
    }
  goto ret0;

 L49653: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4512;  /* *avx512f_scattersiv4df */
    }
  goto ret0;

 L64622: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50199;
    }
  goto ret0;

 L50199: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50200;
    }
  goto ret0;

 L50200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50201;
  goto ret0;

 L50201: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50202;
    }
  goto ret0;

 L50202: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[3] = x3;
      goto L50203;
    }
  goto ret0;

 L50203: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50204;
  goto ret0;

 L50204: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50205;
    }
  goto ret0;

 L50205: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4536;  /* *avx512f_scatterdiv4df */
    }
  goto ret0;

 L12516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DFmode)
    goto L64624;
  goto ret0;

 L64624: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L12827;
    case VEC_MERGE:
      goto L12845;
    case MINUS:
      goto L12863;
    case MULT:
      goto L13195;
    case SMAX:
      goto L14137;
    case SMIN:
      goto L14173;
    case FMA:
      goto L18095;
    case FLOAT:
      goto L20718;
    case UNSIGNED_FLOAT:
      goto L20750;
    case UNSPEC:
      goto L64640;
    case NEG:
    case ABS:
      goto L64623;
    default:
      goto ret0;
   }
 L64623: ATTRIBUTE_UNUSED_LABEL
  if (absneg_operator (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L12517;
    }
  goto ret0;

 L12827: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12828;
    }
  goto ret0;

 L12828: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L12829;
    }
  goto ret0;

 L12829: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12830;
  goto ret0;

 L12830: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12831;
    }
  goto ret0;

 L12831: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands) && 1 && (V4DFmode == V16SFmode
							      || V4DFmode == V8DFmode
							      || V4DFmode == V8DImode
							      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1197;  /* *addv4df3_round */
    }
  goto ret0;

 L12845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode)
    goto L64647;
  goto ret0;

 L64647: ATTRIBUTE_UNUSED_LABEL
  return recog_151 (x0, insn, pnum_clobbers);

 L12863: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12864;
    }
  goto ret0;

 L12864: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L12865;
    }
  goto ret0;

 L12865: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12866;
  goto ret0;

 L12866: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12867;
    }
  goto ret0;

 L12867: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands) && 1 && (V4DFmode == V16SFmode
							      || V4DFmode == V8DFmode
							      || V4DFmode == V8DImode
							      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1201;  /* *subv4df3_round */
    }
  goto ret0;

 L13195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L13196;
    }
  goto ret0;

 L13196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L13197;
    }
  goto ret0;

 L13197: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13198;
  goto ret0;

 L13198: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13199;
    }
  goto ret0;

 L13199: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands) && 1 && (V4DFmode == V16SFmode
							      || V4DFmode == V8DFmode
							      || V4DFmode == V8DImode
							      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1237;  /* *mulv4df3_round */
    }
  goto ret0;

 L14137: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14138;
    }
  goto ret0;

 L14138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14139;
    }
  goto ret0;

 L14139: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14140;
  goto ret0;

 L14140: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14141;
    }
  goto ret0;

 L14141: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V4DFmode, operands)
   && 1 && (V4DFmode == V16SFmode
									      || V4DFmode == V8DFmode
									      || V4DFmode == V8DImode
									      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1355;  /* *smaxv4df3_finite_round */
    }
  goto ret0;

 L14173: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L14174;
    }
  goto ret0;

 L14174: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L14175;
    }
  goto ret0;

 L14175: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14176;
  goto ret0;

 L14176: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14177;
    }
  goto ret0;

 L14177: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V4DFmode, operands)
   && 1 && (V4DFmode == V16SFmode
									      || V4DFmode == V8DFmode
									      || V4DFmode == V8DImode
									      || V4DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))))
    {
      return 1359;  /* *sminv4df3_finite_round */
    }
  goto ret0;

 L18095: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4DFmode
      && GET_CODE (x3) == NEG)
    goto L18096;
  goto ret0;

 L18096: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[1] = x4;
      goto L18097;
    }
  goto ret0;

 L18097: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[2] = x3;
      goto L18098;
    }
  goto ret0;

 L18098: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V4DFmode
      && GET_CODE (x3) == NEG)
    goto L18099;
  goto ret0;

 L18099: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4DFmode))
    {
      operands[3] = x4;
      goto L18100;
    }
  goto ret0;

 L18100: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18101;
  goto ret0;

 L18101: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18102;
    }
  goto ret0;

 L18102: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1761;  /* *fma_fnmsub_v4df */
    }
  goto ret0;

 L20718: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L20719;
    }
  goto ret0;

 L20719: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20720;
  goto ret0;

 L20720: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20721;
    }
  goto ret0;

 L20721: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2029;  /* floatv4div4df2_round */
    }
  goto ret0;

 L20750: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L20751;
    }
  goto ret0;

 L20751: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20752;
  goto ret0;

 L20752: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20753;
    }
  goto ret0;

 L20753: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2033;  /* ufloatv4div4df2_round */
    }
  goto ret0;

 L64640: ATTRIBUTE_UNUSED_LABEL
  return recog_152 (x0, insn, pnum_clobbers);

 L12517: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L12518;
    }
  goto ret0;

 L12518: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L12519;
  goto ret0;

 L12519: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L12520;
    }
  goto ret0;

 L12520: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)))
    {
      return 1162;  /* *absnegv4df2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_154 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (XVECLEN (x3, 0))
    {
    case 3:
      goto L64804;
    case 2:
      goto L64805;
    case 1:
      goto L64806;
    case 4:
      goto L64808;
    default:
      break;
    }
  goto ret0;

 L64804: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 123LL:
      goto L18912;
    case 82LL:
      goto L25349;
    case 190LL:
      goto L50836;
    case 161LL:
      goto L51194;
    default:
      break;
    }
  goto ret0;

 L18912: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L18913;
    }
  goto ret0;

 L18913: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L18914;
    }
  goto ret0;

 L18914: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V2DFmode)
    goto L64818;
  goto ret0;

 L64818: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19414;
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L18915;
    }
 L64817: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19053;
    }
  goto ret0;

 L19414: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2DFmode)
    goto L64819;
  goto ret0;

 L64819: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L19415;
    }
 L64820: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L19565;
    }
  goto ret0;

 L19415: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19416;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64820;

 L19416: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19417;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64820;

 L19417: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19418;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64820;

 L19418: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19419;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64820;

 L19419: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1881;  /* avx512vl_fmsubadd_v2df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  x5 = XEXP (x4, 0);
  goto L64820;

 L19565: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19566;
  goto ret0;

 L19566: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19567;
    }
  goto ret0;

 L19567: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19568;
  goto ret0;

 L19568: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19569;
    }
  goto ret0;

 L19569: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3634 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1893;  /* avx512vl_fmsubadd_v2df_mask3_round */
    }
  goto ret0;

 L18915: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L18916;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64817;

 L18916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18917;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64817;

 L18917: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18918;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64817;

 L18918: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18919;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64817;

 L18919: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1835;  /* avx512vl_fmaddsub_v2df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64817;

 L19053: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L19054;
  goto ret0;

 L19054: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L19055;
    }
  goto ret0;

 L19055: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19056;
  goto ret0;

 L19056: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L19057;
    }
  goto ret0;

 L19057: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3563 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1847;  /* avx512vl_fmaddsub_v2df_mask3_round */
    }
  goto ret0;

 L25349: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L25350;
    }
  goto ret0;

 L25350: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L25351;
    }
  goto ret0;

 L25351: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L25352;
    }
  goto ret0;

 L25352: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L25353;
  goto ret0;

 L25353: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L25354;
  goto ret0;

 L25354: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25355;
  goto ret0;

 L25355: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L25356;
    }
  goto ret0;

 L25356: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7903 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 2489;  /* avx512f_rndscalev2df_round */
    }
  goto ret0;

 L50836: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L50837;
    }
  goto ret0;

 L50837: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L50838;
    }
  goto ret0;

 L50838: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L50839;
    }
  goto ret0;

 L50839: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L50840;
  goto ret0;

 L50840: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L50841;
  goto ret0;

 L50841: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L50842;
  goto ret0;

 L50842: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L50843;
    }
  goto ret0;

 L50843: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18429 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 4600;  /* avx512dq_rangesv2df_round */
    }
  goto ret0;

 L51194: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L51195;
    }
  goto ret0;

 L51195: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L51196;
    }
  goto ret0;

 L51196: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L51197;
    }
  goto ret0;

 L51197: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L51198;
  goto ret0;

 L51198: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L51199;
  goto ret0;

 L51199: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51200;
  goto ret0;

 L51200: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L51201;
    }
  goto ret0;

 L51201: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18484 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 4642;  /* avx512f_vgetmantv2df_round */
    }
  goto ret0;

 L64805: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 158LL:
      goto L23774;
    case 160LL:
      goto L24402;
    case 82LL:
      goto L25306;
    case 161LL:
      goto L51151;
    default:
      break;
    }
  goto ret0;

 L23774: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L23775;
    }
  goto ret0;

 L23775: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64821;
  goto ret0;

 L64821: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L23776;
    }
 L64822: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L23992;
    }
  goto ret0;

 L23776: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L23777;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64822;

 L23777: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L23778;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64822;

 L23778: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23779;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64822;

 L23779: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23780;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64822;

 L23780: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7657 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 2331;  /* avx512f_vmscalefv2df_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 1);
  goto L64822;

 L23992: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L23993;
    }
  goto ret0;

 L23993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L23994;
    }
  goto ret0;

 L23994: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23995;
  goto ret0;

 L23995: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L23996;
    }
  goto ret0;

 L23996: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2355;  /* avx512vl_scalefv2df_mask_round */
    }
  goto ret0;

 L24402: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L24403;
    }
  goto ret0;

 L24403: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L24404;
    }
  goto ret0;

 L24404: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L24405;
  goto ret0;

 L24405: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L24406;
  goto ret0;

 L24406: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24407;
  goto ret0;

 L24407: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L24408;
    }
  goto ret0;

 L24408: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7737 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 2401;  /* avx512f_sgetexpv2df_round */
    }
  goto ret0;

 L25306: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L25307;
    }
  goto ret0;

 L25307: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L25308;
    }
  goto ret0;

 L25308: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L25309;
    }
  goto ret0;

 L25309: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L25310;
    }
  goto ret0;

 L25310: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25311;
  goto ret0;

 L25311: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25312;
    }
  goto ret0;

 L25312: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2485;  /* avx512vl_rndscalev2df_mask_round */
    }
  goto ret0;

 L51151: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L51152;
    }
  goto ret0;

 L51152: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_0_to_15_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L51153;
    }
  goto ret0;

 L51153: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L51154;
    }
  goto ret0;

 L51154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L51155;
    }
  goto ret0;

 L51155: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51156;
  goto ret0;

 L51156: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L51157;
    }
  goto ret0;

 L51157: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 4638;  /* avx512vl_getmantv2df_mask_round */
    }
  goto ret0;

 L64806: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 160LL:
      goto L24363;
    case 173LL:
      goto L39679;
    case 174LL:
      goto L39779;
    default:
      break;
    }
  goto ret0;

 L24363: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L24364;
    }
  goto ret0;

 L24364: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L24365;
    }
  goto ret0;

 L24365: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L24366;
    }
  goto ret0;

 L24366: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24367;
  goto ret0;

 L24367: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L24368;
    }
  goto ret0;

 L24368: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2397;  /* avx512vl_getexpv2df_mask_round */
    }
  goto ret0;

 L39679: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L39680;
    }
  goto ret0;

 L39680: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L39681;
    }
  goto ret0;

 L39681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39682;
  goto ret0;

 L39682: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39683;
  goto ret0;

 L39683: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L39684;
    }
  goto ret0;

 L39684: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 15401 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 3750;  /* avx512er_vmrcp28v2df_round */
    }
  goto ret0;

 L39779: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L39780;
    }
  goto ret0;

 L39780: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L39781;
    }
  goto ret0;

 L39781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L39782;
  goto ret0;

 L39782: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L39783;
  goto ret0;

 L39783: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L39784;
    }
  goto ret0;

 L39784: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 15427 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512ER) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 3762;  /* avx512er_vmrsqrt28v2df_round */
    }
  goto ret0;

 L64808: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 1) == 157)
    goto L24766;
  goto ret0;

 L24766: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L24767;
    }
  goto ret0;

 L24767: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L24768;
    }
  goto ret0;

 L24768: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == V2DImode)
    goto L64823;
  goto ret0;

 L64823: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L24769;
    }
 L64824: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[3] = x4;
      goto L24998;
    }
  goto ret0;

 L24769: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24770;
    }
  x4 = XVECEXP (x3, 0, 2);
  goto L64824;

 L24770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L24771;
    }
 L24920: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L24921;
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64824;

 L24771: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L24772;
    }
  x3 = XEXP (x2, 1);
  goto L24920;

 L24772: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24773;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24920;

 L24773: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L24774;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24920;

 L24774: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2437;  /* avx512vl_fixupimmv2df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L24920;

 L24921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L24922;
    }
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64824;

 L24922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24923;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64824;

 L24923: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L24924;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64824;

 L24924: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7825 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2449;  /* avx512vl_fixupimmv2df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XVECEXP (x3, 0, 2);
  goto L64824;

 L24998: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (const_0_to_255_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L24999;
    }
  goto ret0;

 L24999: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L25000;
  goto ret0;

 L25000: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L25001;
  goto ret0;

 L25001: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25002;
  goto ret0;

 L25002: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L25003;
    }
  goto ret0;

 L25003: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7857 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 2455;  /* avx512f_sfixupimmv2df_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_155 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L12918;
    case MINUS:
      goto L12954;
    case MULT:
      goto L13250;
    case DIV:
      goto L13330;
    case SQRT:
      goto L13724;
    case SMAX:
      goto L14228;
    case SMIN:
      goto L14264;
    case FMA:
      goto L17000;
    case UNSPEC:
      goto L64769;
    case FLOAT:
      goto L20799;
    case UNSIGNED_FLOAT:
      goto L20831;
    case FLOAT_EXTEND:
      goto L21773;
    case VEC_MERGE:
      goto L25023;
    default:
     break;
   }
  goto ret0;

 L12918: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L12919;
    }
  goto ret0;

 L12919: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64781;
  goto ret0;

 L64781: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L12920;
    }
 L64782: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L13016;
    }
  goto ret0;

 L12920: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L12921;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64782;

 L12921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12922;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64782;

 L12922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12923;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64782;

 L12923: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12924;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64782;

 L12924: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands) && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
							      || V2DFmode == V8DFmode
							      || V2DFmode == V8DImode
							      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))))
    {
      return 1207;  /* *addv2df3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64782;

 L13016: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L13017;
  goto ret0;

 L13017: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13018;
  goto ret0;

 L13018: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13019;
  goto ret0;

 L13019: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13020;
    }
  goto ret0;

 L13020: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1217;  /* sse2_vmaddv2df3_round */
    }
  goto ret0;

 L12954: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L12955;
    }
  goto ret0;

 L12955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64783;
  goto ret0;

 L64783: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L12956;
    }
 L64784: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L13036;
    }
  goto ret0;

 L12956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L12957;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64784;

 L12957: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L12958;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64784;

 L12958: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12959;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64784;

 L12959: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L12960;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64784;

 L12960: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands) && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
							      || V2DFmode == V8DFmode
							      || V2DFmode == V8DImode
							      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))))
    {
      return 1211;  /* *subv2df3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64784;

 L13036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L13037;
  goto ret0;

 L13037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13038;
  goto ret0;

 L13038: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13039;
  goto ret0;

 L13039: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13040;
    }
  goto ret0;

 L13040: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1631 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1219;  /* sse2_vmsubv2df3_round */
    }
  goto ret0;

 L13250: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L13251;
    }
  goto ret0;

 L13251: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64785;
  goto ret0;

 L64785: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L13252;
    }
 L64786: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L13312;
    }
  goto ret0;

 L13252: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L13253;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64786;

 L13253: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L13254;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64786;

 L13254: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13255;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64786;

 L13255: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L13256;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64786;

 L13256: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands) && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
							      || V2DFmode == V8DFmode
							      || V2DFmode == V8DImode
							      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))))
    {
      return 1243;  /* *mulv2df3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64786;

 L13312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L13313;
  goto ret0;

 L13313: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13314;
  goto ret0;

 L13314: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13315;
  goto ret0;

 L13315: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13316;
    }
  goto ret0;

 L13316: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1249;  /* sse2_vmmulv2df3_round */
    }
  goto ret0;

 L13330: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L13331;
    }
  goto ret0;

 L13331: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L13332;
    }
  goto ret0;

 L13332: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L13333;
  goto ret0;

 L13333: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13334;
  goto ret0;

 L13334: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13335;
  goto ret0;

 L13335: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13336;
    }
  goto ret0;

 L13336: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1671 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1251;  /* sse2_vmdivv2df3_round */
    }
  goto ret0;

 L13724: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L13725;
    }
  goto ret0;

 L13725: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L13726;
    }
  goto ret0;

 L13726: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L13727;
  goto ret0;

 L13727: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13728;
  goto ret0;

 L13728: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13729;
    }
  goto ret0;

 L13729: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1304;  /* sse2_vmsqrtv2df2_round */
    }
  goto ret0;

 L14228: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L14229;
    }
  goto ret0;

 L14229: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64787;
  goto ret0;

 L64787: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L14230;
    }
 L64788: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L14590;
    }
  goto ret0;

 L14230: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L14231;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64788;

 L14231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14232;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64788;

 L14232: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14233;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64788;

 L14233: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14234;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64788;

 L14234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V2DFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
									      || V2DFmode == V8DFmode
									      || V2DFmode == V8DImode
									      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))))
    {
      return 1365;  /* *smaxv2df3_finite_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64788;

 L14590: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L14591;
  goto ret0;

 L14591: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14592;
  goto ret0;

 L14592: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14593;
  goto ret0;

 L14593: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14594;
    }
  goto ret0;

 L14594: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1407;  /* sse2_vmsmaxv2df3_round */
    }
  goto ret0;

 L14264: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L14265;
    }
  goto ret0;

 L14265: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64789;
  goto ret0;

 L64789: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L14266;
    }
 L64790: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L14610;
    }
  goto ret0;

 L14266: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L14267;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64790;

 L14267: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L14268;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64790;

 L14268: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14269;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64790;

 L14269: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L14270;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64790;

 L14270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V2DFmode, operands)
   && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
									      || V2DFmode == V8DFmode
									      || V2DFmode == V8DImode
									      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))))
    {
      return 1369;  /* *sminv2df3_finite_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64790;

 L14610: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L14611;
  goto ret0;

 L14611: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L14612;
  goto ret0;

 L14612: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14613;
  goto ret0;

 L14613: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14614;
    }
  goto ret0;

 L14614: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1946 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1409;  /* sse2_vmsminv2df3_round */
    }
  goto ret0;

 L17000: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DFmode)
    goto L64792;
  goto ret0;

 L64792: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L18025;
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L17001;
    }
  goto ret0;

 L18025: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == V2DFmode)
    goto L64793;
  goto ret0;

 L64793: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, V2DFmode))
    {
      operands[1] = x5;
      goto L18026;
    }
 L64794: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DFmode))
    {
      operands[1] = x5;
      goto L18584;
    }
 L64795: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DFmode))
    {
      operands[2] = x5;
      goto L19703;
    }
  goto ret0;

 L18026: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L18027;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18027: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V2DFmode
      && GET_CODE (x4) == NEG)
    goto L18028;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18028: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L18029;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18029: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V2DFmode))
    {
      operands[4] = x3;
      goto L18030;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L18031;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18031: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18032;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18032: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L18033;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18033: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1755;  /* *fma_fnmsub_v2df */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64794;

 L18584: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L18585;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18585: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V2DFmode
      && GET_CODE (x4) == NEG)
    goto L18586;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18586: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L18587;
    }
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L18588;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18588: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L18589;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18589: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18590;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18590: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L18591;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L18591: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1801;  /* avx512vl_fnmsub_v2df_mask3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  goto L64795;

 L19703: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L19704;
    }
  goto ret0;

 L19704: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V2DFmode)
    goto L64797;
  goto ret0;

 L64797: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19756;
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19705;
    }
  goto ret0;

 L19756: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L19757;
    }
  goto ret0;

 L19757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19758;
  goto ret0;

 L19758: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19759;
  goto ret0;

 L19759: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19760;
  goto ret0;

 L19760: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19761;
    }
  goto ret0;

 L19761: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3715 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1909;  /* *fmai_fnmsub_v2df_round */
    }
  goto ret0;

 L19705: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19706;
  goto ret0;

 L19706: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19707;
  goto ret0;

 L19707: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19708;
  goto ret0;

 L19708: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19709;
    }
  goto ret0;

 L19709: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3697 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1905;  /* *fmai_fnmadd_v2df_round */
    }
  goto ret0;

 L17001: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == V2DFmode)
    goto L64798;
  goto ret0;

 L64798: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L17002;
    }
 L64799: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L19608;
    }
  goto ret0;

 L17002: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V2DFmode)
    goto L64801;
  x4 = XEXP (x3, 1);
  goto L64799;

 L64801: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L17380;
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L17003;
    }
  x4 = XEXP (x3, 1);
  goto L64799;

 L17380: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L17381;
    }
  x4 = XEXP (x3, 1);
  goto L64799;

 L17381: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L17382;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17382: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17383;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17383: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17384;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17384: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17385;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17385: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3306 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1695;  /* avx512vl_fmsub_v2df_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17003: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L17004;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17004: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L17005;
    }
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17005: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17006;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17006: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L17007;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L17007: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3257 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1659;  /* avx512vl_fmadd_v2df_mask3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 1);
  goto L64799;

 L19608: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (GET_MODE (x4) == V2DFmode)
    goto L64803;
  goto ret0;

 L64803: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == NEG)
    goto L19656;
  if (register_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L19609;
    }
  goto ret0;

 L19656: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V2DFmode))
    {
      operands[3] = x5;
      goto L19657;
    }
  goto ret0;

 L19657: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19658;
  goto ret0;

 L19658: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19659;
  goto ret0;

 L19659: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19660;
  goto ret0;

 L19660: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19661;
    }
  goto ret0;

 L19661: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3680 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1901;  /* *fmai_fmsub_v2df */
    }
  goto ret0;

 L19609: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L19610;
  goto ret0;

 L19610: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L19611;
  goto ret0;

 L19611: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L19612;
  goto ret0;

 L19612: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L19613;
    }
  goto ret0;

 L19613: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 3663 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1897;  /* *fmai_fmadd_v2df */
    }
  goto ret0;

 L64769: ATTRIBUTE_UNUSED_LABEL
  return recog_154 (x0, insn, pnum_clobbers);

 L20799: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L20800;
    }
  goto ret0;

 L20800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L20801;
    }
  goto ret0;

 L20801: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20802;
    }
  goto ret0;

 L20802: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20803;
  goto ret0;

 L20803: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20804;
    }
  goto ret0;

 L20804: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2039;  /* floatv2div2df2_mask_round */
    }
  goto ret0;

 L20831: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DImode))
    {
      operands[1] = x4;
      goto L20832;
    }
  goto ret0;

 L20832: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L20833;
    }
  goto ret0;

 L20833: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20834;
    }
  goto ret0;

 L20834: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20835;
  goto ret0;

 L20835: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20836;
    }
  goto ret0;

 L20836: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 2043;  /* ufloatv2div2df2_mask_round */
    }
  goto ret0;

 L21773: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2SFmode
      && GET_CODE (x4) == VEC_SELECT)
    goto L21774;
  goto ret0;

 L21774: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, V4SFmode))
    {
      operands[2] = x5;
      goto L21775;
    }
  goto ret0;

 L21775: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_CODE (x5) == PARALLEL
      && XVECLEN (x5, 0) == 2)
    goto L21776;
  goto ret0;

 L21776: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 0);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L21777;
  goto ret0;

 L21777: ATTRIBUTE_UNUSED_LABEL
  x6 = XVECEXP (x5, 0, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21778;
  goto ret0;

 L21778: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L21779;
    }
  goto ret0;

 L21779: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L21780;
  goto ret0;

 L21780: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21781;
  goto ret0;

 L21781: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L21782;
    }
  goto ret0;

 L21782: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4861 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 2160;  /* sse2_cvtss2sd_round */
    }
  goto ret0;

 L25023: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == V2DFmode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 4
      && XINT (x4, 1) == 157)
    goto L25024;
  goto ret0;

 L25024: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (register_operand (x5, V2DFmode))
    {
      operands[1] = x5;
      goto L25025;
    }
  goto ret0;

 L25025: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V2DFmode))
    {
      operands[2] = x5;
      goto L25026;
    }
  goto ret0;

 L25026: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L25027;
    }
  goto ret0;

 L25027: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 3);
  if (const_0_to_255_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L25028;
    }
  goto ret0;

 L25028: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[1]))
    goto L25029;
  goto ret0;

 L25029: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L25030;
  goto ret0;

 L25030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const0_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L25031;
    }
 L25092: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[1]))
    goto L25093;
  goto ret0;

 L25031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L25032;
    }
  x3 = XEXP (x2, 1);
  goto L25092;

 L25032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25033;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L25092;

 L25033: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[7] = x2;
      goto L25034;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L25092;

 L25034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7857 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 2457;  /* avx512f_sfixupimmv2df_maskz_1_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L25092;

 L25093: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[5] = x3;
      goto L25094;
    }
  goto ret0;

 L25094: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25095;
  goto ret0;

 L25095: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L25096;
    }
  goto ret0;

 L25096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7876 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 2461;  /* avx512f_sfixupimmv2df_mask_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_156 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L64825;
    case 1:
      goto L64826;
    case 4:
      goto L64827;
    case 3:
      goto L64830;
    default:
      break;
    }
  goto ret0;

 L64825: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 158LL:
      goto L23971;
    case 82LL:
      goto L25287;
    case 161LL:
      goto L51132;
    default:
      break;
    }
  goto ret0;

 L23971: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L23972;
    }
  goto ret0;

 L23972: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L23973;
    }
  goto ret0;

 L23973: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L23974;
  goto ret0;

 L23974: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L23975;
    }
  goto ret0;

 L23975: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7668 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2353;  /* avx512vl_scalefv2df_round */
    }
  goto ret0;

 L25287: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L25288;
    }
  goto ret0;

 L25288: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L25289;
    }
  goto ret0;

 L25289: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L25290;
  goto ret0;

 L25290: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L25291;
    }
  goto ret0;

 L25291: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7887 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2483;  /* avx512vl_rndscalev2df_round */
    }
  goto ret0;

 L51132: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L51133;
    }
  goto ret0;

 L51133: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_0_to_15_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51134;
    }
  goto ret0;

 L51134: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L51135;
  goto ret0;

 L51135: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L51136;
    }
  goto ret0;

 L51136: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 18469 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4636;  /* avx512vl_getmantv2df_round */
    }
  goto ret0;

 L64826: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 160)
    goto L24346;
  goto ret0;

 L24346: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L24347;
    }
  goto ret0;

 L24347: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24348;
  goto ret0;

 L24348: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L24349;
    }
  goto ret0;

 L24349: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7723 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2395;  /* avx512vl_getexpv2df_round */
    }
  goto ret0;

 L64827: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 157LL:
      goto L24743;
    case 145LL:
      goto L44782;
    default:
      break;
    }
  goto ret0;

 L24743: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L24744;
    }
  goto ret0;

 L24744: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L24745;
    }
  goto ret0;

 L24745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L24746;
    }
  goto ret0;

 L24746: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L24747;
    }
  goto ret0;

 L24747: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L24748;
  goto ret0;

 L24748: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L24749;
    }
  goto ret0;

 L24749: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 7809 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 267 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2435;  /* avx512vl_fixupimmv2df_round */
    }
  goto ret0;

 L44782: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L44783;
    }
  if (GET_CODE (x3) == PC)
    goto L45247;
  goto ret0;

 L44783: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[7] = x3;
      goto L44784;
    }
  goto ret0;

 L44784: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64832;
    case DImode:
      goto L64833;
    default:
      break;
    }
  goto ret0;

 L64832: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44785;
  goto ret0;

 L44785: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L44786;
    }
  goto ret0;

 L44786: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64834;
    case V2DImode:
      goto L64835;
    default:
      break;
    }
  goto ret0;

 L64834: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44787;
    }
  goto ret0;

 L44787: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44788;
    }
  goto ret0;

 L44788: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44789;
  goto ret0;

 L44789: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44790;
  goto ret0;

 L44790: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L44791;
    }
  goto ret0;

 L44791: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44792;
  goto ret0;

 L44792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L44793;
    }
  goto ret0;

 L44793: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4331;  /* *avx2_gathersiv2df */
    }
  goto ret0;

 L64835: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45715;
    }
  goto ret0;

 L45715: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45716;
    }
  goto ret0;

 L45716: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45717;
  goto ret0;

 L45717: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45718;
  goto ret0;

 L45718: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L45719;
    }
  goto ret0;

 L45719: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45720;
  goto ret0;

 L45720: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L45721;
    }
  goto ret0;

 L45721: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4363;  /* *avx2_gatherdiv2df */
    }
  goto ret0;

 L64833: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44814;
  goto ret0;

 L44814: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L44815;
    }
  goto ret0;

 L44815: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64836;
    case V2DImode:
      goto L64837;
    default:
      break;
    }
  goto ret0;

 L64836: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44816;
    }
  goto ret0;

 L44816: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44817;
    }
  goto ret0;

 L44817: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44818;
  goto ret0;

 L44818: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44819;
  goto ret0;

 L44819: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L44820;
    }
  goto ret0;

 L44820: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44821;
  goto ret0;

 L44821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L44822;
    }
  goto ret0;

 L44822: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4332;  /* *avx2_gathersiv2df */
    }
  goto ret0;

 L64837: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45744;
    }
  goto ret0;

 L45744: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45745;
    }
  goto ret0;

 L45745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45746;
  goto ret0;

 L45746: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45747;
  goto ret0;

 L45747: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L45748;
    }
  goto ret0;

 L45748: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45749;
  goto ret0;

 L45749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L45750;
    }
  goto ret0;

 L45750: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4364;  /* *avx2_gatherdiv2df */
    }
  goto ret0;

 L45247: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[6] = x3;
      goto L45248;
    }
  goto ret0;

 L45248: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64838;
    case DImode:
      goto L64839;
    default:
      break;
    }
  goto ret0;

 L64838: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45249;
  goto ret0;

 L45249: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45250;
    }
  goto ret0;

 L45250: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64840;
    case V2DImode:
      goto L64841;
    default:
      break;
    }
  goto ret0;

 L64840: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45251;
    }
  goto ret0;

 L45251: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45252;
    }
  goto ret0;

 L45252: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45253;
  goto ret0;

 L45253: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45254;
  goto ret0;

 L45254: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[4] = x3;
      goto L45255;
    }
  goto ret0;

 L45255: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45256;
  goto ret0;

 L45256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L45257;
    }
  goto ret0;

 L45257: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4347;  /* *avx2_gathersiv2df_2 */
    }
  goto ret0;

 L64841: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46179;
    }
  goto ret0;

 L46179: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46180;
    }
  goto ret0;

 L46180: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46181;
  goto ret0;

 L46181: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46182;
  goto ret0;

 L46182: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[4] = x3;
      goto L46183;
    }
  goto ret0;

 L46183: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46184;
  goto ret0;

 L46184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L46185;
    }
  goto ret0;

 L46185: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4379;  /* *avx2_gatherdiv2df_2 */
    }
  goto ret0;

 L64839: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45278;
  goto ret0;

 L45278: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45279;
    }
  goto ret0;

 L45279: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64842;
    case V2DImode:
      goto L64843;
    default:
      break;
    }
  goto ret0;

 L64842: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45280;
    }
  goto ret0;

 L45280: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45281;
    }
  goto ret0;

 L45281: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45282;
  goto ret0;

 L45282: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45283;
  goto ret0;

 L45283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[4] = x3;
      goto L45284;
    }
  goto ret0;

 L45284: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45285;
  goto ret0;

 L45285: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L45286;
    }
  goto ret0;

 L45286: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4348;  /* *avx2_gathersiv2df_2 */
    }
  goto ret0;

 L64843: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46208;
    }
  goto ret0;

 L46208: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46209;
    }
  goto ret0;

 L46209: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46210;
  goto ret0;

 L46210: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46211;
  goto ret0;

 L46211: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DFmode))
    {
      operands[4] = x3;
      goto L46212;
    }
  goto ret0;

 L46212: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46213;
  goto ret0;

 L46213: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L46214;
    }
  goto ret0;

 L46214: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4380;  /* *avx2_gatherdiv2df_2 */
    }
  goto ret0;

 L64830: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47450;
  goto ret0;

 L47450: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L47451;
    }
  if (GET_CODE (x3) == PC)
    goto L48051;
  goto ret0;

 L47451: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47452;
    }
  goto ret0;

 L47452: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[6] = x3;
      goto L47453;
    }
  goto ret0;

 L47453: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64844;
    case DImode:
      goto L64845;
    default:
      break;
    }
  goto ret0;

 L64844: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47454;
  goto ret0;

 L47454: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47455;
    }
  goto ret0;

 L47455: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64846;
    case V2DImode:
      goto L64847;
    default:
      break;
    }
  goto ret0;

 L64846: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47456;
    }
  goto ret0;

 L47456: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47457;
    }
  goto ret0;

 L47457: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47458;
  goto ret0;

 L47458: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47459;
    }
  goto ret0;

 L47459: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4423;  /* *avx512f_gathersiv2df */
    }
  goto ret0;

 L64847: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48656;
    }
  goto ret0;

 L48656: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48657;
    }
  goto ret0;

 L48657: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48658;
  goto ret0;

 L48658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48659;
    }
  goto ret0;

 L48659: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4471;  /* *avx512f_gatherdiv2df */
    }
  goto ret0;

 L64845: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47479;
  goto ret0;

 L47479: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47480;
    }
  goto ret0;

 L47480: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64848;
    case V2DImode:
      goto L64849;
    default:
      break;
    }
  goto ret0;

 L64848: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47481;
    }
  goto ret0;

 L47481: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47482;
    }
  goto ret0;

 L47482: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47483;
  goto ret0;

 L47483: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47484;
    }
  goto ret0;

 L47484: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4424;  /* *avx512f_gathersiv2df */
    }
  goto ret0;

 L64849: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48681;
    }
  goto ret0;

 L48681: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48682;
    }
  goto ret0;

 L48682: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48683;
  goto ret0;

 L48683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48684;
    }
  goto ret0;

 L48684: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4472;  /* *avx512f_gatherdiv2df */
    }
  goto ret0;

 L48051: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L48052;
    }
  goto ret0;

 L48052: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DFmode))
    {
      operands[5] = x3;
      goto L48053;
    }
  goto ret0;

 L48053: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64850;
    case DImode:
      goto L64851;
    default:
      break;
    }
  goto ret0;

 L64850: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48054;
  goto ret0;

 L48054: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L48055;
    }
  goto ret0;

 L48055: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64852;
    case V2DImode:
      goto L64853;
    default:
      break;
    }
  goto ret0;

 L64852: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L48056;
    }
  goto ret0;

 L48056: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48057;
    }
  goto ret0;

 L48057: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48058;
  goto ret0;

 L48058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48059;
    }
  goto ret0;

 L48059: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4447;  /* *avx512f_gathersiv2df_2 */
    }
  goto ret0;

 L64853: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49256;
    }
  goto ret0;

 L49256: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49257;
    }
  goto ret0;

 L49257: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49258;
  goto ret0;

 L49258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49259;
    }
  goto ret0;

 L49259: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4495;  /* *avx512f_gatherdiv2df_2 */
    }
  goto ret0;

 L64851: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48079;
  goto ret0;

 L48079: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L48080;
    }
  goto ret0;

 L48080: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L64854;
    case V2DImode:
      goto L64855;
    default:
      break;
    }
  goto ret0;

 L64854: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L48081;
    }
  goto ret0;

 L48081: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48082;
    }
  goto ret0;

 L48082: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48083;
  goto ret0;

 L48083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48084;
    }
  goto ret0;

 L48084: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4448;  /* *avx512f_gathersiv2df_2 */
    }
  goto ret0;

 L64855: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49281;
    }
  goto ret0;

 L49281: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49282;
    }
  goto ret0;

 L49282: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49283;
  goto ret0;

 L49283: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49284;
    }
  goto ret0;

 L49284: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4496;  /* *avx512f_gatherdiv2df_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_157 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (vsib_mem_operator (x2, V2DFmode))
    {
      operands[5] = x2;
      goto L49805;
    }
  if (register_operand (x2, V2DFmode))
    {
      operands[0] = x2;
      goto L12524;
    }
  goto ret0;

 L49805: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64715;
    case DImode:
      goto L64716;
    default:
      break;
    }
  goto ret0;

 L64715: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49806;
  goto ret0;

 L49806: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49807;
    }
  goto ret0;

 L49807: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64717;
    case V2DImode:
      goto L64718;
    default:
      break;
    }
  goto ret0;

 L64717: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49808;
    }
  goto ret0;

 L49808: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49809;
    }
  goto ret0;

 L49809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49810;
  goto ret0;

 L49810: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49811;
    }
  goto ret0;

 L49811: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L49812;
    }
  goto ret0;

 L49812: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49813;
  goto ret0;

 L49813: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49814;
    }
  goto ret0;

 L49814: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4519;  /* *avx512f_scattersiv2df */
    }
  goto ret0;

 L64718: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50360;
    }
  goto ret0;

 L50360: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50361;
    }
  goto ret0;

 L50361: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50362;
  goto ret0;

 L50362: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50363;
    }
  goto ret0;

 L50363: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L50364;
    }
  goto ret0;

 L50364: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50365;
  goto ret0;

 L50365: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50366;
    }
  goto ret0;

 L50366: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4543;  /* *avx512f_scatterdiv2df */
    }
  goto ret0;

 L64716: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49829;
  goto ret0;

 L49829: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49830;
    }
  goto ret0;

 L49830: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64719;
    case V2DImode:
      goto L64720;
    default:
      break;
    }
  goto ret0;

 L64719: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49831;
    }
  goto ret0;

 L49831: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49832;
    }
  goto ret0;

 L49832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49833;
  goto ret0;

 L49833: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49834;
    }
  goto ret0;

 L49834: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L49835;
    }
  goto ret0;

 L49835: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49836;
  goto ret0;

 L49836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49837;
    }
  goto ret0;

 L49837: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4520;  /* *avx512f_scattersiv2df */
    }
  goto ret0;

 L64720: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50383;
    }
  goto ret0;

 L50383: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50384;
    }
  goto ret0;

 L50384: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50385;
  goto ret0;

 L50385: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50386;
    }
  goto ret0;

 L50386: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[3] = x3;
      goto L50387;
    }
  goto ret0;

 L50387: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50388;
  goto ret0;

 L50388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50389;
    }
  goto ret0;

 L50389: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4544;  /* *avx512f_scatterdiv2df */
    }
  goto ret0;

 L12524: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DFmode)
    goto L64722;
  goto ret0;

 L64722: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L12899;
    case VEC_MERGE:
      goto L12917;
    case MINUS:
      goto L12935;
    case MULT:
      goto L13231;
    case SMAX:
      goto L14209;
    case SMIN:
      goto L14245;
    case FMA:
      goto L17999;
    case FLOAT:
      goto L20782;
    case UNSIGNED_FLOAT:
      goto L20814;
    case UNSPEC:
      goto L64738;
    case NEG:
    case ABS:
      goto L64721;
    default:
      goto ret0;
   }
 L64721: ATTRIBUTE_UNUSED_LABEL
  if (absneg_operator (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L12525;
    }
  goto ret0;

 L12899: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12900;
    }
  goto ret0;

 L12900: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L12901;
    }
  goto ret0;

 L12901: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12902;
  goto ret0;

 L12902: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12903;
    }
  goto ret0;

 L12903: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands) && 1 && (V2DFmode == V16SFmode
							      || V2DFmode == V8DFmode
							      || V2DFmode == V8DImode
							      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1205;  /* *addv2df3_round */
    }
  goto ret0;

 L12917: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode)
    goto L64745;
  goto ret0;

 L64745: ATTRIBUTE_UNUSED_LABEL
  return recog_155 (x0, insn, pnum_clobbers);

 L12935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12936;
    }
  goto ret0;

 L12936: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L12937;
    }
  goto ret0;

 L12937: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L12938;
  goto ret0;

 L12938: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L12939;
    }
  goto ret0;

 L12939: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1614 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands) && 1 && (V2DFmode == V16SFmode
							      || V2DFmode == V8DFmode
							      || V2DFmode == V8DImode
							      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1209;  /* *subv2df3_round */
    }
  goto ret0;

 L13231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L13232;
    }
  goto ret0;

 L13232: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L13233;
    }
  goto ret0;

 L13233: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L13234;
  goto ret0;

 L13234: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L13235;
    }
  goto ret0;

 L13235: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1653 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands) && 1 && (V2DFmode == V16SFmode
							      || V2DFmode == V8DFmode
							      || V2DFmode == V8DImode
							      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1241;  /* *mulv2df3_round */
    }
  goto ret0;

 L14209: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14210;
    }
  goto ret0;

 L14210: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14211;
    }
  goto ret0;

 L14211: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14212;
  goto ret0;

 L14212: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14213;
    }
  goto ret0;

 L14213: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMAX, V2DFmode, operands)
   && 1 && (V2DFmode == V16SFmode
									      || V2DFmode == V8DFmode
									      || V2DFmode == V8DImode
									      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1363;  /* *smaxv2df3_finite_round */
    }
  goto ret0;

 L14245: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L14246;
    }
  goto ret0;

 L14246: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L14247;
    }
  goto ret0;

 L14247: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L14248;
  goto ret0;

 L14248: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L14249;
    }
  goto ret0;

 L14249: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 1910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && flag_finite_math_only
   && ix86_binary_operator_ok (SMIN, V2DFmode, operands)
   && 1 && (V2DFmode == V16SFmode
									      || V2DFmode == V8DFmode
									      || V2DFmode == V8DImode
									      || V2DFmode == V16SImode)) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1367;  /* *sminv2df3_finite_round */
    }
  goto ret0;

 L17999: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V2DFmode
      && GET_CODE (x3) == NEG)
    goto L18000;
  goto ret0;

 L18000: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L18001;
    }
  goto ret0;

 L18001: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[2] = x3;
      goto L18002;
    }
  goto ret0;

 L18002: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == V2DFmode
      && GET_CODE (x3) == NEG)
    goto L18003;
  goto ret0;

 L18003: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V2DFmode))
    {
      operands[3] = x4;
      goto L18004;
    }
  goto ret0;

 L18004: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L18005;
  goto ret0;

 L18005: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L18006;
    }
  goto ret0;

 L18006: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1753;  /* *fma_fnmsub_v2df */
    }
  goto ret0;

 L20782: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L20783;
    }
  goto ret0;

 L20783: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20784;
  goto ret0;

 L20784: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20785;
    }
  goto ret0;

 L20785: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2037;  /* floatv2div2df2_round */
    }
  goto ret0;

 L20814: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L20815;
    }
  goto ret0;

 L20815: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20816;
  goto ret0;

 L20816: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20817;
    }
  goto ret0;

 L20817: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4487 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 2041;  /* ufloatv2div2df2_round */
    }
  goto ret0;

 L64738: ATTRIBUTE_UNUSED_LABEL
  return recog_156 (x0, insn, pnum_clobbers);

 L12525: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L12526;
    }
  goto ret0;

 L12526: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L12527;
  goto ret0;

 L12527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L12528;
    }
  goto ret0;

 L12528: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)))
    {
      return 1163;  /* *absnegv2df2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_158 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L64881;
    case VEC_MERGE:
      goto L20160;
    case FIX:
      goto L20402;
    case UNSIGNED_FIX:
      goto L20434;
    default:
     break;
   }
  goto ret0;

 L64881: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L64884;
    case 3:
      goto L64886;
    default:
      break;
    }
  goto ret0;

 L64884: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 41LL:
      goto L20144;
    case 150LL:
      goto L20176;
    default:
      break;
    }
  goto ret0;

 L20144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20145;
    }
  goto ret0;

 L20145: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20146;
  goto ret0;

 L20146: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20147;
    }
  goto ret0;

 L20147: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1956;  /* *avx512f_fix_notruncv16sfv16si_round */
    }
  goto ret0;

 L20176: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20177;
    }
  goto ret0;

 L20177: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20178;
  goto ret0;

 L20178: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20179;
    }
  goto ret0;

 L20179: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1960;  /* *avx512f_ufix_notruncv16sfv16si_round */
    }
  goto ret0;

 L64886: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L46900;
  goto ret0;

 L46900: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L64887;
    case V8SImode:
      goto L64888;
    default:
      break;
    }
 L47500: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PC)
    goto L47501;
  goto ret0;

 L64887: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L46901;
    }
  goto L47500;

 L46901: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, HImode))
    {
      operands[7] = x3;
      goto L46902;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46902: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L46903;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46903: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64889;
    case DImode:
      goto L64890;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L64889: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46904;
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46904: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L46905;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46905: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[3] = x5;
      goto L46906;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46906: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46907;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46907: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46908;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L46909;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46909: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4401;  /* *avx512f_gathersiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L64890: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46929;
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46929: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L46930;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46930: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[3] = x5;
      goto L46931;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46931: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46932;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46932: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46933;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L46934;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L46934: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4402;  /* *avx512f_gathersiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L64888: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L48101;
    }
  goto L47500;

 L48101: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L48102;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48102: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L48103;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48103: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64891;
    case DImode:
      goto L64892;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L64891: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48104;
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48104: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48105;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48105: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48106;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48106: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48107;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48107: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48108;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48109;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48109: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4449;  /* *avx512f_gatherdiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L64892: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48129;
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48129: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L48130;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48130: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48131;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48131: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48132;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48132: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48133;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48134;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L48134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4450;  /* *avx512f_gatherdiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47500;

 L47501: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case HImode:
      goto L64893;
    case QImode:
      goto L64894;
    default:
      break;
    }
  goto ret0;

 L64893: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L47502;
    }
  goto ret0;

 L47502: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[5] = x3;
      goto L47503;
    }
  goto ret0;

 L47503: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64895;
    case DImode:
      goto L64896;
    default:
      break;
    }
  goto ret0;

 L64895: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47504;
  goto ret0;

 L47504: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47505;
    }
  goto ret0;

 L47505: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[2] = x5;
      goto L47506;
    }
  goto ret0;

 L47506: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47507;
    }
  goto ret0;

 L47507: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47508;
  goto ret0;

 L47508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L47509;
    }
  goto ret0;

 L47509: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4425;  /* *avx512f_gathersiv16si_2 */
    }
  goto ret0;

 L64896: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47529;
  goto ret0;

 L47529: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47530;
    }
  goto ret0;

 L47530: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V16SImode))
    {
      operands[2] = x5;
      goto L47531;
    }
  goto ret0;

 L47531: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47532;
    }
  goto ret0;

 L47532: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47533;
  goto ret0;

 L47533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L47534;
    }
  goto ret0;

 L47534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4426;  /* *avx512f_gathersiv16si_2 */
    }
  goto ret0;

 L64894: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L48702;
    }
  goto ret0;

 L48702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[5] = x3;
      goto L48703;
    }
  goto ret0;

 L48703: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64897;
    case DImode:
      goto L64898;
    default:
      break;
    }
  goto ret0;

 L64897: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48704;
  goto ret0;

 L48704: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L48705;
    }
  goto ret0;

 L48705: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48706;
    }
  goto ret0;

 L48706: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48707;
    }
  goto ret0;

 L48707: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48708;
  goto ret0;

 L48708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48709;
    }
  goto ret0;

 L48709: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4473;  /* *avx512f_gatherdiv16si_2 */
    }
  goto ret0;

 L64898: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48729;
  goto ret0;

 L48729: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L48730;
    }
  goto ret0;

 L48730: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48731;
    }
  goto ret0;

 L48731: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48732;
    }
  goto ret0;

 L48732: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48733;
  goto ret0;

 L48733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48734;
    }
  goto ret0;

 L48734: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4474;  /* *avx512f_gatherdiv16si_2 */
    }
  goto ret0;

 L20160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V16SImode)
    goto L64899;
  goto ret0;

 L64899: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case UNSPEC:
      goto L64903;
    case FIX:
      goto L20419;
    case UNSIGNED_FIX:
      goto L20451;
    default:
     break;
   }
  goto ret0;

 L64903: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 1)
    goto L64905;
  goto ret0;

 L64905: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 41LL:
      goto L20161;
    case 150LL:
      goto L20193;
    default:
      break;
    }
  goto ret0;

 L20161: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L20162;
    }
  goto ret0;

 L20162: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L20163;
    }
  goto ret0;

 L20163: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L20164;
    }
  goto ret0;

 L20164: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20165;
  goto ret0;

 L20165: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20166;
    }
  goto ret0;

 L20166: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1958;  /* avx512f_fix_notruncv16sfv16si_mask_round */
    }
  goto ret0;

 L20193: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L20194;
    }
  goto ret0;

 L20194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L20195;
    }
  goto ret0;

 L20195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L20196;
    }
  goto ret0;

 L20196: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20197;
  goto ret0;

 L20197: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20198;
    }
  goto ret0;

 L20198: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1962;  /* avx512f_ufix_notruncv16sfv16si_mask_round */
    }
  goto ret0;

 L20419: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L20420;
    }
  goto ret0;

 L20420: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L20421;
    }
  goto ret0;

 L20421: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L20422;
    }
  goto ret0;

 L20422: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20423;
  goto ret0;

 L20423: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20424;
    }
  goto ret0;

 L20424: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1990;  /* fix_truncv16sfv16si2_mask_round */
    }
  goto ret0;

 L20451: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L20452;
    }
  goto ret0;

 L20452: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L20453;
    }
  goto ret0;

 L20453: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L20454;
    }
  goto ret0;

 L20454: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20455;
  goto ret0;

 L20455: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20456;
    }
  goto ret0;

 L20456: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1994;  /* ufix_truncv16sfv16si2_mask_round */
    }
  goto ret0;

 L20402: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20403;
    }
  goto ret0;

 L20403: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20404;
  goto ret0;

 L20404: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20405;
    }
  goto ret0;

 L20405: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1988;  /* fix_truncv16sfv16si2_round */
    }
  goto ret0;

 L20434: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L20435;
    }
  goto ret0;

 L20435: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20436;
  goto ret0;

 L20436: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20437;
    }
  goto ret0;

 L20437: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1992;  /* ufix_truncv16sfv16si2_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_159 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L64924;
    case 4:
      goto L64926;
    case 3:
      goto L64927;
    default:
      break;
    }
  goto ret0;

 L64924: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 150LL:
      goto L20208;
    case 41LL:
      goto L21072;
    default:
      break;
    }
  goto ret0;

 L20208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L64928;
    case V8DFmode:
      goto L64929;
    default:
      break;
    }
  goto ret0;

 L64928: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20209;
    }
  goto ret0;

 L20209: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20210;
  goto ret0;

 L20210: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20211;
    }
  goto ret0;

 L20211: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 1964;  /* *avx512vl_ufix_notruncv8sfv8si_round */
    }
  goto ret0;

 L64929: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21145;
    }
  goto ret0;

 L21145: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21146;
  goto ret0;

 L21146: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21147;
    }
  goto ret0;

 L21147: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2080;  /* ufix_notruncv8dfv8si2_round */
    }
  goto ret0;

 L21072: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21073;
    }
  goto ret0;

 L21073: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21074;
  goto ret0;

 L21074: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21075;
    }
  goto ret0;

 L21075: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2071;  /* *avx512f_cvtpd2dq512_round */
    }
  goto ret0;

 L64926: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L45072;
  goto ret0;

 L45072: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L64930;
    case V4SImode:
      goto L64931;
    default:
      break;
    }
 L45536: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PC)
    goto L45537;
  goto ret0;

 L64930: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L45073;
    }
  goto L45536;

 L45073: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[7] = x3;
      goto L45074;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45074: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64932;
    case DImode:
      goto L64933;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L64932: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45075;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45075: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L45076;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45076: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[4] = x5;
      goto L45077;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45077: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45078;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45078: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45079;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45079: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45080;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45080: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SImode))
    {
      operands[5] = x3;
      goto L45081;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45082;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L45083;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45083: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4341;  /* *avx2_gathersiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L64933: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45104;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45104: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L45105;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45105: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[4] = x5;
      goto L45106;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45106: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45107;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45107: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45108;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45108: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45109;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45109: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SImode))
    {
      operands[5] = x3;
      goto L45110;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45110: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45111;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45111: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L45112;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45112: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4342;  /* *avx2_gathersiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L64931: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[2] = x3;
      goto L46001;
    }
  goto L45536;

 L46001: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[7] = x3;
      goto L46002;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46002: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64934;
    case DImode:
      goto L64935;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L64934: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46003;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46003: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L46004;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46004: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46005;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46005: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46006;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46006: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46007;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46007: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46008;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46008: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L46009;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46009: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46010;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46011;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46011: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4373;  /* *avx2_gatherdiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L64935: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L46032;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46032: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L46033;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46033: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L46034;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46034: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L46035;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46035: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46036;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46036: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46037;
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46037: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[5] = x3;
      goto L46038;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46038: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46039;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46040;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L46040: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4374;  /* *avx2_gatherdiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L45536;

 L45537: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L45538;
    }
  goto ret0;

 L45538: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64936;
    case DImode:
      goto L64937;
    default:
      break;
    }
  goto ret0;

 L64936: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45539;
  goto ret0;

 L45539: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45540;
    }
  goto ret0;

 L45540: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64938;
    case V4DImode:
      goto L64939;
    default:
      break;
    }
  goto ret0;

 L64938: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L45541;
    }
  goto ret0;

 L45541: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45542;
    }
  goto ret0;

 L45542: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45543;
  goto ret0;

 L45543: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45544;
  goto ret0;

 L45544: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SImode))
    {
      operands[4] = x3;
      goto L45545;
    }
  goto ret0;

 L45545: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45546;
  goto ret0;

 L45546: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L45547;
    }
  goto ret0;

 L45547: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4357;  /* *avx2_gathersiv8si_2 */
    }
  goto ret0;

 L64939: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46469;
    }
  goto ret0;

 L46469: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46470;
    }
  goto ret0;

 L46470: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46471;
  goto ret0;

 L46471: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46472;
  goto ret0;

 L46472: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L46473;
    }
  goto ret0;

 L46473: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46474;
  goto ret0;

 L46474: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46475;
    }
  goto ret0;

 L46475: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4389;  /* *avx2_gatherdiv8si_2 */
    }
  goto ret0;

 L64937: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45568;
  goto ret0;

 L45568: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45569;
    }
  goto ret0;

 L45569: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64940;
    case V4DImode:
      goto L64941;
    default:
      break;
    }
  goto ret0;

 L64940: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L45570;
    }
  goto ret0;

 L45570: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45571;
    }
  goto ret0;

 L45571: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45572;
  goto ret0;

 L45572: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45573;
  goto ret0;

 L45573: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V8SImode))
    {
      operands[4] = x3;
      goto L45574;
    }
  goto ret0;

 L45574: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45575;
  goto ret0;

 L45575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L45576;
    }
  goto ret0;

 L45576: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4358;  /* *avx2_gathersiv8si_2 */
    }
  goto ret0;

 L64941: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46498;
    }
  goto ret0;

 L46498: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46499;
    }
  goto ret0;

 L46499: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46500;
  goto ret0;

 L46500: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46501;
  goto ret0;

 L46501: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4SImode))
    {
      operands[4] = x3;
      goto L46502;
    }
  goto ret0;

 L46502: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46503;
  goto ret0;

 L46503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L46504;
    }
  goto ret0;

 L46504: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4390;  /* *avx2_gatherdiv8si_2 */
    }
  goto ret0;

 L64927: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47100;
  goto ret0;

 L47100: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L64942;
    case V4SImode:
      goto L64943;
    default:
      break;
    }
 L47700: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PC)
    goto L47701;
  goto ret0;

 L64942: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L47101;
    }
  goto L47700;

 L47101: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47102;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47102: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L47103;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47103: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64944;
    case DImode:
      goto L64945;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L64944: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47104;
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47104: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47105;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47105: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47106;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47106: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47107;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47107: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47108;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47109;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47109: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4409;  /* *avx512f_gathersiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L64945: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47129;
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47129: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47130;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47130: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47131;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47131: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47132;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47132: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47133;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47134;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4410;  /* *avx512f_gathersiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L64943: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V4SImode))
    {
      operands[1] = x3;
      goto L48301;
    }
  goto L47700;

 L48301: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L48302;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48302: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[6] = x3;
      goto L48303;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48303: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64946;
    case DImode:
      goto L64947;
    default:
      break;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L64946: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48304;
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48304: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48305;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48305: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48306;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48306: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48307;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48307: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48308;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48309;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48309: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4457;  /* *avx512f_gatherdiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L64947: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48329;
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48329: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L48330;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48330: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48331;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48331: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48332;
    }
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48332: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48333;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48333: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48334;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L48334: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4458;  /* *avx512f_gatherdiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XVECEXP (x2, 0, 0);
  goto L47700;

 L47701: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47702;
    }
  goto ret0;

 L47702: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, SImode))
    {
      operands[5] = x3;
      goto L47703;
    }
  goto ret0;

 L47703: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64948;
    case DImode:
      goto L64949;
    default:
      break;
    }
  goto ret0;

 L64948: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47704;
  goto ret0;

 L47704: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47705;
    }
  goto ret0;

 L47705: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64950;
    case V4DImode:
      goto L64951;
    default:
      break;
    }
  goto ret0;

 L64950: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47706;
    }
  goto ret0;

 L47706: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47707;
    }
  goto ret0;

 L47707: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47708;
  goto ret0;

 L47708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47709;
    }
  goto ret0;

 L47709: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4433;  /* *avx512f_gathersiv8si_2 */
    }
  goto ret0;

 L64951: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L48906;
    }
  goto ret0;

 L48906: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48907;
    }
  goto ret0;

 L48907: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48908;
  goto ret0;

 L48908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48909;
    }
  goto ret0;

 L48909: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4481;  /* *avx512f_gatherdiv8si_2 */
    }
  goto ret0;

 L64949: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47729;
  goto ret0;

 L47729: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47730;
    }
  goto ret0;

 L47730: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64952;
    case V4DImode:
      goto L64953;
    default:
      break;
    }
  goto ret0;

 L64952: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47731;
    }
  goto ret0;

 L47731: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47732;
    }
  goto ret0;

 L47732: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47733;
  goto ret0;

 L47733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47734;
    }
  goto ret0;

 L47734: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4434;  /* *avx512f_gathersiv8si_2 */
    }
  goto ret0;

 L64953: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L48931;
    }
  goto ret0;

 L48931: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48932;
    }
  goto ret0;

 L48932: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48933;
  goto ret0;

 L48933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48934;
    }
  goto ret0;

 L48934: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4482;  /* *avx512f_gatherdiv8si_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_160 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L64976;
    case VEC_MERGE:
      goto L20288;
    case FIX:
      goto L21338;
    case UNSIGNED_FIX:
      goto L21370;
    default:
     break;
   }
  goto ret0;

 L64976: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L64979;
    case 3:
      goto L64981;
    default:
      break;
    }
  goto ret0;

 L64979: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 41LL:
      goto L20272;
    case 150LL:
      goto L20337;
    default:
      break;
    }
  goto ret0;

 L20272: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L64982;
    case V8DFmode:
      goto L64983;
    default:
      break;
    }
  goto ret0;

 L64982: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20273;
    }
  goto ret0;

 L20273: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20274;
  goto ret0;

 L20274: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20275;
    }
  goto ret0;

 L20275: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4091 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DImode == V16SFmode
							      || V8DImode == V8DFmode
							      || V8DImode == V8DImode
							      || V8DImode == V16SImode))))
    {
      return 1972;  /* *avx512dq_cvtps2qqv8di_round */
    }
  goto ret0;

 L64983: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21455;
    }
  goto ret0;

 L21455: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21456;
  goto ret0;

 L21456: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21457;
    }
  goto ret0;

 L21457: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 2120;  /* fix_notruncv8dfv8di2_round */
    }
  goto ret0;

 L20337: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8SFmode:
      goto L64984;
    case V8DFmode:
      goto L64985;
    default:
      break;
    }
  goto ret0;

 L64984: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L20338;
    }
  goto ret0;

 L20338: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20339;
  goto ret0;

 L20339: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L20340;
    }
  goto ret0;

 L20340: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DImode == V16SFmode
							      || V8DImode == V8DFmode
							      || V8DImode == V8DImode
							      || V8DImode == V16SImode))))
    {
      return 1980;  /* *avx512dq_cvtps2uqqv8di_round */
    }
  goto ret0;

 L64985: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21513;
    }
  goto ret0;

 L21513: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21514;
  goto ret0;

 L21514: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21515;
    }
  goto ret0;

 L21515: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode))))
    {
      return 2128;  /* ufix_notruncv8dfv8di2_round */
    }
  goto ret0;

 L64981: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47000;
  goto ret0;

 L47000: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L47001;
    }
  if (GET_CODE (x3) == PC)
    goto L47601;
  goto ret0;

 L47001: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47002;
    }
  goto ret0;

 L47002: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[6] = x3;
      goto L47003;
    }
  goto ret0;

 L47003: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64986;
    case DImode:
      goto L64987;
    default:
      break;
    }
  goto ret0;

 L64986: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47004;
  goto ret0;

 L47004: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47005;
    }
  goto ret0;

 L47005: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64988;
    case V8DImode:
      goto L64989;
    default:
      break;
    }
  goto ret0;

 L64988: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47006;
    }
  goto ret0;

 L47006: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47007;
    }
  goto ret0;

 L47007: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47008;
  goto ret0;

 L47008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47009;
    }
  goto ret0;

 L47009: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4405;  /* *avx512f_gathersiv8di */
    }
  goto ret0;

 L64989: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48206;
    }
  goto ret0;

 L48206: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48207;
    }
  goto ret0;

 L48207: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48208;
  goto ret0;

 L48208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48209;
    }
  goto ret0;

 L48209: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4453;  /* *avx512f_gatherdiv8di */
    }
  goto ret0;

 L64987: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47029;
  goto ret0;

 L47029: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47030;
    }
  goto ret0;

 L47030: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64990;
    case V8DImode:
      goto L64991;
    default:
      break;
    }
  goto ret0;

 L64990: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[3] = x5;
      goto L47031;
    }
  goto ret0;

 L47031: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47032;
    }
  goto ret0;

 L47032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47033;
  goto ret0;

 L47033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47034;
    }
  goto ret0;

 L47034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4406;  /* *avx512f_gathersiv8di */
    }
  goto ret0;

 L64991: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[3] = x5;
      goto L48231;
    }
  goto ret0;

 L48231: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48232;
    }
  goto ret0;

 L48232: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48233;
  goto ret0;

 L48233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48234;
    }
  goto ret0;

 L48234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4454;  /* *avx512f_gatherdiv8di */
    }
  goto ret0;

 L47601: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47602;
    }
  goto ret0;

 L47602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[5] = x3;
      goto L47603;
    }
  goto ret0;

 L47603: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L64992;
    case DImode:
      goto L64993;
    default:
      break;
    }
  goto ret0;

 L64992: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47604;
  goto ret0;

 L47604: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47605;
    }
  goto ret0;

 L47605: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64994;
    case V8DImode:
      goto L64995;
    default:
      break;
    }
  goto ret0;

 L64994: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47606;
    }
  goto ret0;

 L47606: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47607;
    }
  goto ret0;

 L47607: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47608;
  goto ret0;

 L47608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47609;
    }
  goto ret0;

 L47609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4429;  /* *avx512f_gathersiv8di_2 */
    }
  goto ret0;

 L64995: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48806;
    }
  goto ret0;

 L48806: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48807;
    }
  goto ret0;

 L48807: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48808;
  goto ret0;

 L48808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48809;
    }
  goto ret0;

 L48809: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4477;  /* *avx512f_gatherdiv8di_2 */
    }
  goto ret0;

 L64993: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47629;
  goto ret0;

 L47629: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47630;
    }
  goto ret0;

 L47630: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V8SImode:
      goto L64996;
    case V8DImode:
      goto L64997;
    default:
      break;
    }
  goto ret0;

 L64996: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8SImode))
    {
      operands[2] = x5;
      goto L47631;
    }
  goto ret0;

 L47631: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47632;
    }
  goto ret0;

 L47632: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47633;
  goto ret0;

 L47633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47634;
    }
  goto ret0;

 L47634: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4430;  /* *avx512f_gathersiv8di_2 */
    }
  goto ret0;

 L64997: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V8DImode))
    {
      operands[2] = x5;
      goto L48831;
    }
  goto ret0;

 L48831: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48832;
    }
  goto ret0;

 L48832: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48833;
  goto ret0;

 L48833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48834;
    }
  goto ret0;

 L48834: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4478;  /* *avx512f_gatherdiv8di_2 */
    }
  goto ret0;

 L20288: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8DImode)
    goto L64998;
  goto ret0;

 L64998: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case UNSPEC:
      goto L65002;
    case FIX:
      goto L21355;
    case UNSIGNED_FIX:
      goto L21387;
    default:
     break;
   }
  goto ret0;

 L65002: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 1)
    goto L65004;
  goto ret0;

 L65004: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 41LL:
      goto L20289;
    case 150LL:
      goto L20354;
    default:
      break;
    }
  goto ret0;

 L20289: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  switch (GET_MODE (x4))
    {
    case V8SFmode:
      goto L65006;
    case V8DFmode:
      goto L65007;
    default:
      break;
    }
  goto ret0;

 L65006: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L20290;
    }
  goto ret0;

 L20290: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L20291;
    }
  goto ret0;

 L20291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20292;
    }
  goto ret0;

 L20292: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20293;
  goto ret0;

 L20293: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20294;
    }
  goto ret0;

 L20294: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4091 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DImode == V16SFmode
							      || V8DImode == V8DFmode
							      || V8DImode == V8DImode
							      || V8DImode == V16SImode)))))
    {
      return 1974;  /* avx512dq_cvtps2qqv8di_mask_round */
    }
  goto ret0;

 L65007: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21472;
    }
  goto ret0;

 L21472: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L21473;
    }
  goto ret0;

 L21473: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21474;
    }
  goto ret0;

 L21474: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21475;
  goto ret0;

 L21475: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21476;
    }
  goto ret0;

 L21476: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4754 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)))))
    {
      return 2122;  /* fix_notruncv8dfv8di2_mask_round */
    }
  goto ret0;

 L20354: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  switch (GET_MODE (x4))
    {
    case V8SFmode:
      goto L65008;
    case V8DFmode:
      goto L65009;
    default:
      break;
    }
  goto ret0;

 L65008: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L20355;
    }
  goto ret0;

 L20355: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L20356;
    }
  goto ret0;

 L20356: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20357;
    }
  goto ret0;

 L20357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20358;
  goto ret0;

 L20358: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20359;
    }
  goto ret0;

 L20359: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DImode == V16SFmode
							      || V8DImode == V8DFmode
							      || V8DImode == V8DImode
							      || V8DImode == V16SImode)))))
    {
      return 1982;  /* avx512dq_cvtps2uqqv8di_mask_round */
    }
  goto ret0;

 L65009: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21530;
    }
  goto ret0;

 L21530: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L21531;
    }
  goto ret0;

 L21531: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21532;
    }
  goto ret0;

 L21532: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21533;
  goto ret0;

 L21533: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21534;
    }
  goto ret0;

 L21534: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4765 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
							      || V8DFmode == V8DFmode
							      || V8DFmode == V8DImode
							      || V8DFmode == V16SImode)))))
    {
      return 2130;  /* ufix_notruncv8dfv8di2_mask_round */
    }
  goto ret0;

 L21355: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8DFmode:
      goto L65010;
    case V8SFmode:
      goto L65011;
    default:
      break;
    }
  goto ret0;

 L65010: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21356;
    }
  goto ret0;

 L21356: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L21357;
    }
  goto ret0;

 L21357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21358;
    }
  goto ret0;

 L21358: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21359;
  goto ret0;

 L21359: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21360;
    }
  goto ret0;

 L21360: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)))))
    {
      return 2106;  /* fix_truncv8dfv8di2_mask_round */
    }
  goto ret0;

 L65011: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L21588;
    }
  goto ret0;

 L21588: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L21589;
    }
  goto ret0;

 L21589: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21590;
    }
  goto ret0;

 L21590: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21591;
  goto ret0;

 L21591: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21592;
    }
  goto ret0;

 L21592: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode)))))
    {
      return 2138;  /* fix_truncv8sfv8di2_mask_round */
    }
  goto ret0;

 L21387: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case V8DFmode:
      goto L65012;
    case V8SFmode:
      goto L65013;
    default:
      break;
    }
  goto ret0;

 L65012: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21388;
    }
  goto ret0;

 L21388: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L21389;
    }
  goto ret0;

 L21389: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21390;
    }
  goto ret0;

 L21390: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21391;
  goto ret0;

 L21391: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21392;
    }
  goto ret0;

 L21392: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)))))
    {
      return 2110;  /* ufix_truncv8dfv8di2_mask_round */
    }
  goto ret0;

 L65013: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L21620;
    }
  goto ret0;

 L21620: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L21621;
    }
  goto ret0;

 L21621: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21622;
    }
  goto ret0;

 L21622: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21623;
  goto ret0;

 L21623: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21624;
    }
  goto ret0;

 L21624: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode)))))
    {
      return 2142;  /* ufix_truncv8sfv8di2_mask_round */
    }
  goto ret0;

 L21338: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L65014;
    case V8SFmode:
      goto L65015;
    default:
      break;
    }
  goto ret0;

 L65014: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21339;
    }
  goto ret0;

 L21339: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21340;
  goto ret0;

 L21340: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21341;
    }
  goto ret0;

 L21341: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode))))
    {
      return 2104;  /* fix_truncv8dfv8di2_round */
    }
  goto ret0;

 L65015: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21571;
    }
  goto ret0;

 L21571: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21572;
  goto ret0;

 L21572: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21573;
    }
  goto ret0;

 L21573: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode))))
    {
      return 2136;  /* fix_truncv8sfv8di2_round */
    }
  goto ret0;

 L21370: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case V8DFmode:
      goto L65016;
    case V8SFmode:
      goto L65017;
    default:
      break;
    }
  goto ret0;

 L65016: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21371;
    }
  goto ret0;

 L21371: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21372;
  goto ret0;

 L21372: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21373;
    }
  goto ret0;

 L21373: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4743 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode))))
    {
      return 2108;  /* ufix_truncv8dfv8di2_round */
    }
  goto ret0;

 L65017: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L21603;
    }
  goto ret0;

 L21603: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21604;
  goto ret0;

 L21604: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21605;
    }
  goto ret0;

 L21605: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 4775 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512DQ && (V8SFmode == V8SFmode))))
    {
      return 2140;  /* ufix_truncv8sfv8di2_round */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_161 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65035;
    case 3:
      goto L65036;
    default:
      break;
    }
  goto ret0;

 L65035: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L44724;
  goto ret0;

 L44724: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[2] = x3;
      goto L44725;
    }
  if (GET_CODE (x3) == PC)
    goto L45189;
  goto ret0;

 L44725: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[7] = x3;
      goto L44726;
    }
  goto ret0;

 L44726: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65037;
    case DImode:
      goto L65038;
    default:
      break;
    }
  goto ret0;

 L65037: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44727;
  goto ret0;

 L44727: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L44728;
    }
  goto ret0;

 L44728: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65039;
    case V2DImode:
      goto L65040;
    default:
      break;
    }
  goto ret0;

 L65039: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44729;
    }
  goto ret0;

 L44729: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44730;
    }
  goto ret0;

 L44730: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44731;
  goto ret0;

 L44731: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44732;
  goto ret0;

 L44732: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[5] = x3;
      goto L44733;
    }
  goto ret0;

 L44733: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44734;
  goto ret0;

 L44734: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44735;
    }
  goto ret0;

 L44735: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4329;  /* *avx2_gathersiv2di */
    }
  goto ret0;

 L65040: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45657;
    }
  goto ret0;

 L45657: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45658;
    }
  goto ret0;

 L45658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45659;
  goto ret0;

 L45659: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45660;
  goto ret0;

 L45660: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[5] = x3;
      goto L45661;
    }
  goto ret0;

 L45661: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45662;
  goto ret0;

 L45662: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L45663;
    }
  goto ret0;

 L45663: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4361;  /* *avx2_gatherdiv2di */
    }
  goto ret0;

 L65038: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44756;
  goto ret0;

 L44756: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L44757;
    }
  goto ret0;

 L44757: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65041;
    case V2DImode:
      goto L65042;
    default:
      break;
    }
  goto ret0;

 L65041: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44758;
    }
  goto ret0;

 L44758: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44759;
    }
  goto ret0;

 L44759: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44760;
  goto ret0;

 L44760: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44761;
  goto ret0;

 L44761: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[5] = x3;
      goto L44762;
    }
  goto ret0;

 L44762: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44763;
  goto ret0;

 L44763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L44764;
    }
  goto ret0;

 L44764: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4330;  /* *avx2_gathersiv2di */
    }
  goto ret0;

 L65042: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[4] = x5;
      goto L45686;
    }
  goto ret0;

 L45686: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45687;
    }
  goto ret0;

 L45687: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45688;
  goto ret0;

 L45688: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45689;
  goto ret0;

 L45689: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[5] = x3;
      goto L45690;
    }
  goto ret0;

 L45690: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45691;
  goto ret0;

 L45691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L45692;
    }
  goto ret0;

 L45692: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4362;  /* *avx2_gatherdiv2di */
    }
  goto ret0;

 L45189: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[6] = x3;
      goto L45190;
    }
  goto ret0;

 L45190: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65043;
    case DImode:
      goto L65044;
    default:
      break;
    }
  goto ret0;

 L65043: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45191;
  goto ret0;

 L45191: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45192;
    }
  goto ret0;

 L45192: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65045;
    case V2DImode:
      goto L65046;
    default:
      break;
    }
  goto ret0;

 L65045: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45193;
    }
  goto ret0;

 L45193: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45194;
    }
  goto ret0;

 L45194: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45195;
  goto ret0;

 L45195: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45196;
  goto ret0;

 L45196: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[4] = x3;
      goto L45197;
    }
  goto ret0;

 L45197: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45198;
  goto ret0;

 L45198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L45199;
    }
  goto ret0;

 L45199: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4345;  /* *avx2_gathersiv2di_2 */
    }
  goto ret0;

 L65046: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46121;
    }
  goto ret0;

 L46121: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46122;
    }
  goto ret0;

 L46122: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46123;
  goto ret0;

 L46123: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46124;
  goto ret0;

 L46124: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[4] = x3;
      goto L46125;
    }
  goto ret0;

 L46125: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46126;
  goto ret0;

 L46126: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L46127;
    }
  goto ret0;

 L46127: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4377;  /* *avx2_gatherdiv2di_2 */
    }
  goto ret0;

 L65044: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45220;
  goto ret0;

 L45220: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45221;
    }
  goto ret0;

 L45221: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65047;
    case V2DImode:
      goto L65048;
    default:
      break;
    }
  goto ret0;

 L65047: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45222;
    }
  goto ret0;

 L45222: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45223;
    }
  goto ret0;

 L45223: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45224;
  goto ret0;

 L45224: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45225;
  goto ret0;

 L45225: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[4] = x3;
      goto L45226;
    }
  goto ret0;

 L45226: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45227;
  goto ret0;

 L45227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L45228;
    }
  goto ret0;

 L45228: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4346;  /* *avx2_gathersiv2di_2 */
    }
  goto ret0;

 L65048: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L46150;
    }
  goto ret0;

 L46150: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46151;
    }
  goto ret0;

 L46151: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46152;
  goto ret0;

 L46152: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46153;
  goto ret0;

 L46153: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V2DImode))
    {
      operands[4] = x3;
      goto L46154;
    }
  goto ret0;

 L46154: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46155;
  goto ret0;

 L46155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L46156;
    }
  goto ret0;

 L46156: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4378;  /* *avx2_gatherdiv2di_2 */
    }
  goto ret0;

 L65036: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47400;
  goto ret0;

 L47400: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V2DImode))
    {
      operands[1] = x3;
      goto L47401;
    }
  if (GET_CODE (x3) == PC)
    goto L48001;
  goto ret0;

 L47401: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47402;
    }
  goto ret0;

 L47402: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[6] = x3;
      goto L47403;
    }
  goto ret0;

 L47403: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65049;
    case DImode:
      goto L65050;
    default:
      break;
    }
  goto ret0;

 L65049: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47404;
  goto ret0;

 L47404: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47405;
    }
  goto ret0;

 L47405: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65051;
    case V2DImode:
      goto L65052;
    default:
      break;
    }
  goto ret0;

 L65051: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47406;
    }
  goto ret0;

 L47406: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47407;
    }
  goto ret0;

 L47407: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47408;
  goto ret0;

 L47408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47409;
    }
  goto ret0;

 L47409: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4421;  /* *avx512f_gathersiv2di */
    }
  goto ret0;

 L65052: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48606;
    }
  goto ret0;

 L48606: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48607;
    }
  goto ret0;

 L48607: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48608;
  goto ret0;

 L48608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48609;
    }
  goto ret0;

 L48609: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4469;  /* *avx512f_gatherdiv2di */
    }
  goto ret0;

 L65050: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47429;
  goto ret0;

 L47429: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47430;
    }
  goto ret0;

 L47430: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65053;
    case V2DImode:
      goto L65054;
    default:
      break;
    }
  goto ret0;

 L65053: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47431;
    }
  goto ret0;

 L47431: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47432;
    }
  goto ret0;

 L47432: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47433;
  goto ret0;

 L47433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47434;
    }
  goto ret0;

 L47434: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4422;  /* *avx512f_gathersiv2di */
    }
  goto ret0;

 L65054: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[3] = x5;
      goto L48631;
    }
  goto ret0;

 L48631: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48632;
    }
  goto ret0;

 L48632: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48633;
  goto ret0;

 L48633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48634;
    }
  goto ret0;

 L48634: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4470;  /* *avx512f_gatherdiv2di */
    }
  goto ret0;

 L48001: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L48002;
    }
  goto ret0;

 L48002: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[5] = x3;
      goto L48003;
    }
  goto ret0;

 L48003: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65055;
    case DImode:
      goto L65056;
    default:
      break;
    }
  goto ret0;

 L65055: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48004;
  goto ret0;

 L48004: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L48005;
    }
  goto ret0;

 L48005: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65057;
    case V2DImode:
      goto L65058;
    default:
      break;
    }
  goto ret0;

 L65057: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L48006;
    }
  goto ret0;

 L48006: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48007;
    }
  goto ret0;

 L48007: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48008;
  goto ret0;

 L48008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48009;
    }
  goto ret0;

 L48009: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4445;  /* *avx512f_gathersiv2di_2 */
    }
  goto ret0;

 L65058: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49206;
    }
  goto ret0;

 L49206: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49207;
    }
  goto ret0;

 L49207: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49208;
  goto ret0;

 L49208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49209;
    }
  goto ret0;

 L49209: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4493;  /* *avx512f_gatherdiv2di_2 */
    }
  goto ret0;

 L65056: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L48029;
  goto ret0;

 L48029: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L48030;
    }
  goto ret0;

 L48030: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65059;
    case V2DImode:
      goto L65060;
    default:
      break;
    }
  goto ret0;

 L65059: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L48031;
    }
  goto ret0;

 L48031: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L48032;
    }
  goto ret0;

 L48032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48033;
  goto ret0;

 L48033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L48034;
    }
  goto ret0;

 L48034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4446;  /* *avx512f_gathersiv2di_2 */
    }
  goto ret0;

 L65060: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V2DImode))
    {
      operands[2] = x5;
      goto L49231;
    }
  goto ret0;

 L49231: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49232;
    }
  goto ret0;

 L49232: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49233;
  goto ret0;

 L49233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49234;
    }
  goto ret0;

 L49234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4494;  /* *avx512f_gatherdiv2di_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_162 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65071;
    case 3:
      goto L65072;
    default:
      break;
    }
  goto ret0;

 L65071: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L44840;
  goto ret0;

 L44840: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[2] = x3;
      goto L44841;
    }
  if (GET_CODE (x3) == PC)
    goto L45305;
  goto ret0;

 L44841: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[7] = x3;
      goto L44842;
    }
  goto ret0;

 L44842: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65073;
    case DImode:
      goto L65074;
    default:
      break;
    }
  goto ret0;

 L65073: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44843;
  goto ret0;

 L44843: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L44844;
    }
  goto ret0;

 L44844: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65075;
    case V4DImode:
      goto L65076;
    default:
      break;
    }
  goto ret0;

 L65075: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44845;
    }
  goto ret0;

 L44845: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44846;
    }
  goto ret0;

 L44846: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44847;
  goto ret0;

 L44847: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44848;
  goto ret0;

 L44848: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[5] = x3;
      goto L44849;
    }
  goto ret0;

 L44849: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44850;
  goto ret0;

 L44850: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44851;
    }
  goto ret0;

 L44851: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4333;  /* *avx2_gathersiv4di */
    }
  goto ret0;

 L65076: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L45773;
    }
  goto ret0;

 L45773: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45774;
    }
  goto ret0;

 L45774: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45775;
  goto ret0;

 L45775: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45776;
  goto ret0;

 L45776: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[5] = x3;
      goto L45777;
    }
  goto ret0;

 L45777: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45778;
  goto ret0;

 L45778: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L45779;
    }
  goto ret0;

 L45779: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4365;  /* *avx2_gatherdiv4di */
    }
  goto ret0;

 L65074: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L44872;
  goto ret0;

 L44872: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L44873;
    }
  goto ret0;

 L44873: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65077;
    case V4DImode:
      goto L65078;
    default:
      break;
    }
  goto ret0;

 L65077: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[4] = x5;
      goto L44874;
    }
  goto ret0;

 L44874: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L44875;
    }
  goto ret0;

 L44875: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L44876;
  goto ret0;

 L44876: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L44877;
  goto ret0;

 L44877: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[5] = x3;
      goto L44878;
    }
  goto ret0;

 L44878: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L44879;
  goto ret0;

 L44879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L44880;
    }
  goto ret0;

 L44880: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18021 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4334;  /* *avx2_gathersiv4di */
    }
  goto ret0;

 L65078: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[4] = x5;
      goto L45802;
    }
  goto ret0;

 L45802: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[6] = x5;
      goto L45803;
    }
  goto ret0;

 L45803: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45804;
  goto ret0;

 L45804: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45805;
  goto ret0;

 L45805: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[5] = x3;
      goto L45806;
    }
  goto ret0;

 L45806: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45807;
  goto ret0;

 L45807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L45808;
    }
  goto ret0;

 L45808: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18083 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4366;  /* *avx2_gatherdiv4di */
    }
  goto ret0;

 L45305: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[6] = x3;
      goto L45306;
    }
  goto ret0;

 L45306: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65079;
    case DImode:
      goto L65080;
    default:
      break;
    }
  goto ret0;

 L65079: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45307;
  goto ret0;

 L45307: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L45308;
    }
  goto ret0;

 L45308: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65081;
    case V4DImode:
      goto L65082;
    default:
      break;
    }
  goto ret0;

 L65081: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45309;
    }
  goto ret0;

 L45309: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45310;
    }
  goto ret0;

 L45310: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45311;
  goto ret0;

 L45311: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45312;
  goto ret0;

 L45312: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[4] = x3;
      goto L45313;
    }
  goto ret0;

 L45313: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45314;
  goto ret0;

 L45314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L45315;
    }
  goto ret0;

 L45315: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4349;  /* *avx2_gathersiv4di_2 */
    }
  goto ret0;

 L65082: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46237;
    }
  goto ret0;

 L46237: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46238;
    }
  goto ret0;

 L46238: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46239;
  goto ret0;

 L46239: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46240;
  goto ret0;

 L46240: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[4] = x3;
      goto L46241;
    }
  goto ret0;

 L46241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46242;
  goto ret0;

 L46242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L46243;
    }
  goto ret0;

 L46243: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4381;  /* *avx2_gatherdiv4di_2 */
    }
  goto ret0;

 L65080: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L45336;
  goto ret0;

 L45336: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L45337;
    }
  goto ret0;

 L45337: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65083;
    case V4DImode:
      goto L65084;
    default:
      break;
    }
  goto ret0;

 L65083: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L45338;
    }
  goto ret0;

 L45338: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L45339;
    }
  goto ret0;

 L45339: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L45340;
  goto ret0;

 L45340: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L45341;
  goto ret0;

 L45341: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[4] = x3;
      goto L45342;
    }
  goto ret0;

 L45342: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L45343;
  goto ret0;

 L45343: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L45344;
    }
  goto ret0;

 L45344: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18041 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4350;  /* *avx2_gathersiv4di_2 */
    }
  goto ret0;

 L65084: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L46266;
    }
  goto ret0;

 L46266: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L46267;
    }
  goto ret0;

 L46267: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L46268;
  goto ret0;

 L46268: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == SCRATCH)
    goto L46269;
  goto ret0;

 L46269: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, V4DImode))
    {
      operands[4] = x3;
      goto L46270;
    }
  goto ret0;

 L46270: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L46271;
  goto ret0;

 L46271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L46272;
    }
  goto ret0;

 L46272: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18103 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4382;  /* *avx2_gatherdiv4di_2 */
    }
  goto ret0;

 L65072: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 145)
    goto L47200;
  goto ret0;

 L47200: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V4DImode))
    {
      operands[1] = x3;
      goto L47201;
    }
  if (GET_CODE (x3) == PC)
    goto L47801;
  goto ret0;

 L47201: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[7] = x3;
      goto L47202;
    }
  goto ret0;

 L47202: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[6] = x3;
      goto L47203;
    }
  goto ret0;

 L47203: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65085;
    case DImode:
      goto L65086;
    default:
      break;
    }
  goto ret0;

 L65085: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47204;
  goto ret0;

 L47204: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47205;
    }
  goto ret0;

 L47205: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65087;
    case V4DImode:
      goto L65088;
    default:
      break;
    }
  goto ret0;

 L65087: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47206;
    }
  goto ret0;

 L47206: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47207;
    }
  goto ret0;

 L47207: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47208;
  goto ret0;

 L47208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47209;
    }
  goto ret0;

 L47209: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4413;  /* *avx512f_gathersiv4di */
    }
  goto ret0;

 L65088: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48406;
    }
  goto ret0;

 L48406: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48407;
    }
  goto ret0;

 L48407: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48408;
  goto ret0;

 L48408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48409;
    }
  goto ret0;

 L48409: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4461;  /* *avx512f_gatherdiv4di */
    }
  goto ret0;

 L65086: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47229;
  goto ret0;

 L47229: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L47230;
    }
  goto ret0;

 L47230: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65089;
    case V4DImode:
      goto L65090;
    default:
      break;
    }
  goto ret0;

 L65089: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[3] = x5;
      goto L47231;
    }
  goto ret0;

 L47231: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L47232;
    }
  goto ret0;

 L47232: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47233;
  goto ret0;

 L47233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L47234;
    }
  goto ret0;

 L47234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18191 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4414;  /* *avx512f_gathersiv4di */
    }
  goto ret0;

 L65090: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[3] = x5;
      goto L48431;
    }
  goto ret0;

 L48431: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L48432;
    }
  goto ret0;

 L48432: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L48433;
  goto ret0;

 L48433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L48434;
    }
  goto ret0;

 L48434: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18249 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4462;  /* *avx512f_gatherdiv4di */
    }
  goto ret0;

 L47801: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L47802;
    }
  goto ret0;

 L47802: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (vsib_mem_operator (x3, DImode))
    {
      operands[5] = x3;
      goto L47803;
    }
  goto ret0;

 L47803: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65091;
    case DImode:
      goto L65092;
    default:
      break;
    }
  goto ret0;

 L65091: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47804;
  goto ret0;

 L47804: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, SImode))
    {
      operands[3] = x5;
      goto L47805;
    }
  goto ret0;

 L47805: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65093;
    case V4DImode:
      goto L65094;
    default:
      break;
    }
  goto ret0;

 L65093: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47806;
    }
  goto ret0;

 L47806: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47807;
    }
  goto ret0;

 L47807: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47808;
  goto ret0;

 L47808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47809;
    }
  goto ret0;

 L47809: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4437;  /* *avx512f_gathersiv4di_2 */
    }
  goto ret0;

 L65094: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L49006;
    }
  goto ret0;

 L49006: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49007;
    }
  goto ret0;

 L49007: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49008;
  goto ret0;

 L49008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49009;
    }
  goto ret0;

 L49009: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      return 4485;  /* *avx512f_gatherdiv4di_2 */
    }
  goto ret0;

 L65092: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 3
      && XINT (x4, 1) == 146)
    goto L47829;
  goto ret0;

 L47829: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (vsib_address_operand (x5, DImode))
    {
      operands[3] = x5;
      goto L47830;
    }
  goto ret0;

 L47830: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  switch (GET_MODE (x5))
    {
    case V4SImode:
      goto L65095;
    case V4DImode:
      goto L65096;
    default:
      break;
    }
  goto ret0;

 L65095: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4SImode))
    {
      operands[2] = x5;
      goto L47831;
    }
  goto ret0;

 L47831: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L47832;
    }
  goto ret0;

 L47832: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L47833;
  goto ret0;

 L47833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L47834;
    }
  goto ret0;

 L47834: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18210 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4438;  /* *avx512f_gathersiv4di_2 */
    }
  goto ret0;

 L65096: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, V4DImode))
    {
      operands[2] = x5;
      goto L49031;
    }
  goto ret0;

 L49031: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 2);
  if (const1248_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L49032;
    }
  goto ret0;

 L49032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49033;
  goto ret0;

 L49033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49034;
    }
  goto ret0;

 L49034: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18268 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      return 4486;  /* *avx512f_gatherdiv4di_2 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_163 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case CCFPmode:
      goto L63402;
    case CCFPUmode:
      goto L63403;
    case SImode:
      goto L63404;
    case DImode:
      goto L63405;
    case QImode:
      goto L63409;
    case HImode:
      goto L63410;
    case XFmode:
      goto L63411;
    case SFmode:
      goto L63412;
    case DFmode:
      goto L63413;
    case TImode:
      goto L63420;
    case CCmode:
      goto L63421;
    case CCOmode:
      goto L63424;
    case CCCmode:
      goto L63425;
    case CCZmode:
      goto L63427;
    case TFmode:
      goto L63430;
    default:
      break;
    }
 L667: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case STRICT_LOW_PART:
      goto L668;
    case REG:
      goto L63434;
    default:
     break;
   }
 L2546: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L2547;
  if (GET_CODE (x2) == PC)
    goto L7233;
 L7344: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x2;
  goto L7345;
 L7431: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L63435;
    case CCCmode:
      goto L63436;
    case CCZmode:
      goto L63437;
    case DImode:
      goto L63438;
    case HImode:
      goto L63439;
    case CCmode:
      goto L63440;
    case XFmode:
      goto L63441;
    case SFmode:
      goto L63442;
    case DFmode:
      goto L63443;
    case V4SImode:
      goto L63475;
    case V16SFmode:
      goto L63468;
    case V8SFmode:
      goto L63472;
    case V4SFmode:
      goto L63476;
    case V8DFmode:
      goto L63470;
    case V4DFmode:
      goto L63474;
    case V2DFmode:
      goto L63478;
    case QImode:
      goto L63457;
    case CCFPmode:
      goto L63458;
    case CCFPUmode:
      goto L63459;
    case V16SImode:
      goto L63467;
    case V8SImode:
      goto L63471;
    case V8DImode:
      goto L63469;
    case V16QImode:
      goto L63463;
    case V8HImode:
      goto L63464;
    case V2DImode:
      goto L63477;
    case V4DImode:
      goto L63473;
    default:
      break;
    }
 L8063: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case STRICT_LOW_PART:
      goto L8064;
    case PC:
      goto L10513;
    default:
     break;
   }
  goto ret0;

 L63402: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L142;
  goto L667;

 L142: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == COMPARE)
    goto L143;
  x2 = XEXP (x1, 0);
  goto L667;

 L143: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63479;
    case DFmode:
      goto L63480;
    case XFmode:
      goto L63481;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63479: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L201;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L201: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode)
    goto L63483;
 L144: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L145;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63483: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, SFmode))
    {
      operands[3] = x3;
      goto L316;
    }
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L202;
    }
  goto L144;

 L316: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L63484;
    case SImode:
      goto L63485;
    default:
      break;
    }
  goto L144;

 L63484: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L317;
    }
  goto L144;

 L317: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L318;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L318: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L319;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L319: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 41;  /* *cmpsf_hi_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L63485: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L347;
    }
  goto L144;

 L347: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L348;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L348: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L349;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L349: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 44;  /* *cmpsf_si_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L202: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L203;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L204;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L204: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1508 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 27;  /* *cmpsf_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L144;

 L145: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L146;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L147;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L147: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1442 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 20;  /* *cmpsf_0_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63480: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L210;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L210: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode)
    goto L63487;
 L153: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L154;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63487: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, DFmode))
    {
      operands[3] = x3;
      goto L326;
    }
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L211;
    }
  goto L153;

 L326: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L63488;
    case SImode:
      goto L63489;
    default:
      break;
    }
  goto L153;

 L63488: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L327;
    }
  goto L153;

 L327: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L328;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L329;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L329: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 42;  /* *cmpdf_hi_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L63489: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L357;
    }
  goto L153;

 L357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L358;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L359;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L359: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 45;  /* *cmpdf_si_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L211: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L212;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L212: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L213;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L213: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1508 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 28;  /* *cmpdf_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L153;

 L154: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L155;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L156;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L156: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1442 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 21;  /* *cmpdf_0_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63481: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L178;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L178: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == XFmode)
    goto L63491;
 L162: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L163;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63491: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, XFmode))
    {
      operands[3] = x3;
      goto L336;
    }
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L179;
    }
  goto L162;

 L336: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L63492;
    case SImode:
      goto L63493;
    default:
      break;
    }
  goto L162;

 L63492: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L337;
    }
  goto L162;

 L337: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L338;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L339;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L339: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 43;  /* *cmpxf_hi_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L63493: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L367;
    }
  goto L162;

 L367: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L368;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L369;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L369: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 46;  /* *cmpxf_si_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L179: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L180;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L181;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L181: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 24;  /* *cmpxf_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L162;

 L163: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L164;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L165;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L165: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1442 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 22;  /* *cmpxf_0_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63403: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L238;
  goto L667;

 L238: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPUmode
      && GET_CODE (x2) == COMPARE)
    goto L239;
  x2 = XEXP (x1, 0);
  goto L667;

 L239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L63494;
    case DFmode:
      goto L63495;
    case XFmode:
      goto L63496;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63494: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L240;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L240: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L241;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L242;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L243;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L243: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 32;  /* *cmpusf_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63495: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L249;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L250;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L250: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L251;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L251: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L252;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L252: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 33;  /* *cmpudf_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63496: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L258;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L258: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L259;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L259: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L260;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L261;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L261: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE))
    {
      return 34;  /* *cmpuxf_cc_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63404: ATTRIBUTE_UNUSED_LABEL
  tem = recog_123 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L667;

 L63405: ATTRIBUTE_UNUSED_LABEL
  tem = recog_124 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L667;

 L63409: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L630;
    }
 L63422: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1487;
    }
  goto L667;

 L630: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L63584;
  x2 = XEXP (x1, 0);
  goto L63422;

 L63584: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case MULT:
      goto L2682;
    case AND:
      goto L3552;
    case NOT:
      goto L4005;
    case REG:
    case SUBREG:
      goto L63583;
    default:
      x2 = XEXP (x1, 0);
      goto L63422;
   }
 L63583: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L631;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L2682: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2683;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L2683: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2684;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L2684: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2685;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L2685: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6598 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_QIMODE_MATH
   && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 274;  /* *mulqi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L3552: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == NOT)
    goto L3553;
  x2 = XEXP (x1, 0);
  goto L63422;

 L3553: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L3554;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L3554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L3555;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L3555: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3556;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L3556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 327;  /* kandnqi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L4005: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == XOR)
    goto L4006;
  x2 = XEXP (x1, 0);
  goto L63422;

 L4006: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L4007;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L4007: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L4008;
    }
  x2 = XEXP (x1, 0);
  goto L63422;

 L4008: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4009;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L4009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8426 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F))
    {
      return 356;  /* kxnorqi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L631: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L632;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L633;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 2630 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    {
      return 96;  /* *swapqi_1 */
    }
 L647: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x2, operands[0])
      && 
#line 2646 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_PARTIAL_REG_STALL))
    {
      return 98;  /* *swapqi_2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63422;

 L1487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L63587;
  x2 = XEXP (x1, 0);
  goto L667;

 L63587: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L1488;
    case MINUS:
      goto L2022;
    case AND:
      goto L3522;
    case IOR:
      goto L3841;
    case XOR:
      goto L3855;
    case NEG:
      goto L4500;
    case ASHIFT:
      goto L5103;
    case LSHIFTRT:
      goto L5472;
    case ASHIFTRT:
      goto L5486;
    case ROTATE:
      goto L5982;
    case ROTATERT:
      goto L5996;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L667;

 L1488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2331;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2331: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == PLUS)
    goto L2332;
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L1490;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2332: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2333;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2333: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2334;
  x2 = XEXP (x1, 0);
  goto L667;

 L2334: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2335;
  x2 = XEXP (x1, 0);
  goto L667;

 L2335: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L2336;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2336: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2337;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 255;  /* *addqi3_carry */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1490: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1491;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1491: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 5410 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 200;  /* *addqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2022: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2353;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2353: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == PLUS)
    goto L2354;
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L2024;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2354: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ix86_carry_flag_operator (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L2355;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2355: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_CODE (x5) == REG
      && XINT (x5, 0) == 17)
    goto L2356;
  x2 = XEXP (x1, 0);
  goto L667;

 L2356: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2357;
  x2 = XEXP (x1, 0);
  goto L667;

 L2357: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L2358;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2358: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2359;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 256;  /* *subqi3_carry */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2024: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2025;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6171 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, QImode, operands)))
    {
      return 234;  /* *subqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L3522: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3523;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L3523: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L3524;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L3524: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3525;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L3525: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7912 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (AND, QImode, operands)))
    {
      return 325;  /* *andqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L3841: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3842;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L3842: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L3843;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L3843: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3844;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L3844: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8362 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (IOR, QImode, operands)))
    {
      return 344;  /* *iorqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L3855: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3856;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L3856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L3857;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L3857: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3858;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L3858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8362 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (XOR, QImode, operands)))
    {
      return 345;  /* *xorqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4500: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L4501;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4501: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4502;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8766 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, QImode, operands)))
    {
      return 384;  /* *negqi2_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5103: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5104;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5105;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5105: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5106;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5106: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9586 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFT, QImode, operands)))
    {
      return 438;  /* *ashlqi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5472: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5473;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5473: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5474;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5474: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5475;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (LSHIFTRT, QImode, operands)))
    {
      return 462;  /* *lshrqi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5486: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5487;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5487: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5488;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5488: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5489;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10153 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ASHIFTRT, QImode, operands)))
    {
      return 463;  /* *ashrqi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5982: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5983;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5983: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5984;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5984: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5985;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATE, QImode, operands)))
    {
      return 495;  /* *rotlqi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5996: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5997;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5997: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5998;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L5998: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5999;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L5999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10551 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (ROTATERT, QImode, operands)))
    {
      return 496;  /* *rotrqi3_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63410: ATTRIBUTE_UNUSED_LABEL
  tem = recog_125 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L667;

 L63411: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L766;
    }
  goto L667;

 L766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode)
    goto L63625;
  x2 = XEXP (x1, 0);
  goto L667;

 L63625: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L767;
    }
  if (absneg_operator (x2, XFmode))
    {
      operands[3] = x2;
      goto L4743;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L767: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L768;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L768: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L769;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L769: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 3470 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 119;  /* swapxf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4743: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L4744;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4744: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4745;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4745: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L4746;

 L4746: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8880 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 402;  /* *absnegxf2_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63412: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L773;
    }
 L63414: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L908;
    }
 L63428: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L4640;
    }
  goto L667;

 L773: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (fp_register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L774;
    }
  x2 = XEXP (x1, 0);
  goto L63414;

 L774: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L775;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63414;

 L775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L776;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63414;

 L776: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 3485 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 || reload_completed))
    {
      return 120;  /* *swapsf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63414;

 L908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == FLOAT_TRUNCATE)
    goto L909;
  x2 = XEXP (x1, 0);
  goto L63428;

 L909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case DFmode:
      goto L63627;
    case XFmode:
      goto L63628;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63428;

 L63627: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L910;
    }
  x2 = XEXP (x1, 0);
  goto L63428;

 L910: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L911;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63428;

 L911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L912;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63428;

 L912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4254 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387))
    {
      return 141;  /* *truncdfsf_mixed */
    }
 L920: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4278 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 142;  /* *truncdfsf_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63428;

 L63628: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L931;
    }
  x2 = XEXP (x1, 0);
  goto L63428;

 L931: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L932;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63428;

 L932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L933;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63428;

 L933: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4340 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 144;  /* *truncxfsf2_mixed */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63428;

 L4640: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode)
    goto L63630;
  x2 = XEXP (x1, 0);
  goto L667;

 L63630: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 47)
    goto L4855;
  if (absneg_operator (x2, SFmode))
    {
      operands[3] = x2;
      goto L4641;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4855: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L4856;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4856: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L4857;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[4] = x3;
      goto L4858;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4858: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[5] = x3;
      goto L4859;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4859: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4860;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L4861;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4861: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (SFmode == TFmode))))
    {
      return 419;  /* copysignsf3_var */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L4642;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4642: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4643;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L63631;
 L4711: ATTRIBUTE_UNUSED_LABEL
  operands[2] = x2;
  goto L4712;

 L63631: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L4644;
    }
 L63632: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L4678;
    }
  goto L4711;

 L4644: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8862 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387 && SSE_FLOAT_MODE_P (SFmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 396;  /* *absnegsf2_mixed */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L63632;

 L4678: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8871 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 398;  /* *absnegsf2_sse */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L4711;

 L4712: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8880 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 400;  /* *absnegsf2_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63413: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L780;
    }
 L63415: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L937;
    }
 L63429: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L4657;
    }
  goto L667;

 L780: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (fp_register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L781;
    }
  x2 = XEXP (x1, 0);
  goto L63415;

 L781: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L782;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63415;

 L782: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L783;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63415;

 L783: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 3485 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 || reload_completed))
    {
      return 121;  /* *swapdf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63415;

 L937: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == FLOAT_TRUNCATE)
    goto L938;
  x2 = XEXP (x1, 0);
  goto L63429;

 L938: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L939;
    }
  x2 = XEXP (x1, 0);
  goto L63429;

 L939: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L940;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63429;

 L940: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L941;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63429;

 L941: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4354 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 145;  /* *truncxfdf2_mixed */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63429;

 L4657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode)
    goto L63634;
  x2 = XEXP (x1, 0);
  goto L667;

 L63634: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 47)
    goto L4874;
  if (absneg_operator (x2, DFmode))
    {
      operands[3] = x2;
      goto L4658;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4874: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L4875;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4875: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L4876;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4876: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[4] = x3;
      goto L4877;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4877: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[5] = x3;
      goto L4878;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4878: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4879;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4879: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L4880;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4880: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (DFmode == TFmode))))
    {
      return 420;  /* copysigndf3_var */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4658: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L4659;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4659: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4660;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4660: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L63635;
 L4728: ATTRIBUTE_UNUSED_LABEL
  operands[2] = x2;
  goto L4729;

 L63635: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L4661;
    }
 L63636: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L4695;
    }
  goto L4728;

 L4661: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8862 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387 && SSE_FLOAT_MODE_P (DFmode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 397;  /* *absnegdf2_mixed */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L63636;

 L4695: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8871 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 399;  /* *absnegdf2_sse */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L4728;

 L4729: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8880 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 401;  /* *absnegdf2_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63420: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, TImode))
    {
      operands[0] = x2;
      goto L1398;
    }
  goto L667;

 L1398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == TImode)
    goto L63637;
  x2 = XEXP (x1, 0);
  goto L667;

 L63637: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L1399;
    case MINUS:
      goto L2008;
    case NEG:
      goto L4488;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L667;

 L1399: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, TImode))
    {
      operands[1] = x3;
      goto L1400;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1400: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, TImode))
    {
      operands[2] = x3;
      goto L1401;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1401: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1402;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1402: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 5208 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, TImode, operands)) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 193;  /* *addti3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2008: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, TImode))
    {
      operands[1] = x3;
      goto L2009;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2009: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, TImode))
    {
      operands[2] = x3;
      goto L2010;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2010: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2011;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2011: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6149 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (MINUS, DImode, operands)) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 233;  /* *subti3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4488: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, TImode))
    {
      operands[1] = x3;
      goto L4489;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4489: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4490;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4490: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 8743 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, TImode, operands)) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 383;  /* *negti2_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63421: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L1412;
  goto L667;

 L1412: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 29)
    goto L1413;
  x2 = XEXP (x1, 0);
  goto L667;

 L1413: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63640;
    case DImode:
      goto L63641;
    case QImode:
      goto L63642;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63640: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1414;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1414: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x86_64_general_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L1415;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1415: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1416;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1417;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1417: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L1418;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1418: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1419;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1419: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5233 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 194;  /* *addsi3_cc */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63641: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L1425;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1425: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L1426;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1426: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1427;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1428;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L1429;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1429: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1430;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1430: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 5233 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 195;  /* *adddi3_cc */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63642: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L1436;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1436: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (general_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L1437;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L1437: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L1438;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1438: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L1439;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L1440;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1440: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L1441;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L1441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 5246 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 196;  /* addqi3_cc */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63424: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L1811;
  goto L667;

 L1811: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCOmode)
    goto L63643;
  x2 = XEXP (x1, 0);
  goto L667;

 L63643: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case EQ:
      goto L1812;
    case NE:
      goto L4592;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L667;

 L1812: ATTRIBUTE_UNUSED_LABEL
  tem = recog_126 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L667;

 L4592: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L63662;
    case HImode:
      goto L63663;
    case SImode:
      goto L63664;
    case DImode:
      goto L63665;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63662: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L4593;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4593: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L4594;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4594: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4595;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4595: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L4596;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == NEG)
    goto L4597;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4597: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8842 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, QImode, operands)
   && mode_signbit_p (QImode, operands[2])))
    {
      return 392;  /* *negvqi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63663: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L4603;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4603: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L4604;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4604: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4605;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L4606;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == NEG)
    goto L4607;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4607: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8842 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, HImode, operands)
   && mode_signbit_p (HImode, operands[2])))
    {
      return 393;  /* *negvhi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63664: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L4613;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4613: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L4614;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4614: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4615;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L4616;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NEG)
    goto L4617;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4617: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8842 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, SImode, operands)
   && mode_signbit_p (SImode, operands[2])))
    {
      return 394;  /* *negvsi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63665: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L4623;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4623: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L4624;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4624: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4625;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4625: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L4626;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == NEG)
    goto L4627;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4627: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && (
#line 8842 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, DImode, operands)
   && mode_signbit_p (DImode, operands[2])) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 395;  /* *negvdi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63425: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L2505;
  goto L667;

 L2505: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == COMPARE)
    goto L2506;
  x2 = XEXP (x1, 0);
  goto L667;

 L2506: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63666;
    case DImode:
      goto L63667;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63666: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PLUS)
    goto L2507;
  x2 = XEXP (x1, 0);
  goto L667;

 L2507: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L2508;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2508: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == PLUS)
    goto L2509;
  x2 = XEXP (x1, 0);
  goto L667;

 L2509: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (ix86_carry_flag_operator (x5, VOIDmode))
    {
      operands[4] = x5;
      goto L2510;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2510: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (flags_reg_operand (x6, VOIDmode))
    {
      operands[3] = x6;
      goto L2511;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2511: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2512;
  x2 = XEXP (x1, 0);
  goto L667;

 L2512: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2513;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2513: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2514;
  x2 = XEXP (x1, 0);
  goto L667;

 L2514: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2515;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2516;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L2517;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2517: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2518;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2518: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L2519;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2519: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[4]))
    {
      operands[4] = x4;
      goto L2520;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2520: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[3]))
    goto L2521;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2521: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2522;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2522: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 6399 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ADX && ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 263;  /* adcxsi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63667: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PLUS)
    goto L2528;
  x2 = XEXP (x1, 0);
  goto L667;

 L2528: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L2529;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == PLUS)
    goto L2530;
  x2 = XEXP (x1, 0);
  goto L667;

 L2530: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (ix86_carry_flag_operator (x5, VOIDmode))
    {
      operands[4] = x5;
      goto L2531;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2531: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (flags_reg_operand (x6, VOIDmode))
    {
      operands[3] = x6;
      goto L2532;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2532: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2533;
  x2 = XEXP (x1, 0);
  goto L667;

 L2533: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (nonimmediate_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L2534;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L2534: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2535;
  x2 = XEXP (x1, 0);
  goto L667;

 L2535: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2536;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2536: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2537;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L2538;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2539;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2539: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == PLUS)
    goto L2540;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2540: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[4]))
    {
      operands[4] = x4;
      goto L2541;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2541: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[3]))
    goto L2542;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2542: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2543;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L2543: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[2])
      && (
#line 6399 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ADX && ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 264;  /* adcxdi3 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63427: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L4547;
  goto L667;

 L4547: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L4548;
  x2 = XEXP (x1, 0);
  goto L667;

 L4548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L63668;
    case HImode:
      goto L63669;
    case SImode:
      goto L63670;
    case DImode:
      goto L63671;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L63668: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L4549;
  x2 = XEXP (x1, 0);
  goto L667;

 L4549: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L4550;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4550: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4551;
  x2 = XEXP (x1, 0);
  goto L667;

 L4551: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4552;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4552: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L4553;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == NEG)
    goto L4554;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8795 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, QImode, operands)))
    {
      return 388;  /* *negqi2_cmpz */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63669: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L4560;
  x2 = XEXP (x1, 0);
  goto L667;

 L4560: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L4561;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4561: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4562;
  x2 = XEXP (x1, 0);
  goto L667;

 L4562: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4563;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L4564;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == NEG)
    goto L4565;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4565: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8795 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, HImode, operands)))
    {
      return 389;  /* *neghi2_cmpz */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63670: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L4571;
  x2 = XEXP (x1, 0);
  goto L667;

 L4571: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L4572;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4572: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4573;
  x2 = XEXP (x1, 0);
  goto L667;

 L4573: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4574;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4574: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L4575;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NEG)
    goto L4576;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 8795 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, SImode, operands)))
    {
      return 390;  /* *negsi2_cmpz */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63671: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NEG)
    goto L4582;
  x2 = XEXP (x1, 0);
  goto L667;

 L4582: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L4583;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4583: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L4584;
  x2 = XEXP (x1, 0);
  goto L667;

 L4584: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L4585;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4585: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L4586;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == NEG)
    goto L4587;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && (
#line 8795 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_unary_operator_ok (NEG, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 391;  /* *negdi2_cmpz */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L63430: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, TFmode))
    {
      operands[0] = x2;
      goto L4759;
    }
  goto L667;

 L4759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == TFmode)
    goto L63673;
  x2 = XEXP (x1, 0);
  goto L667;

 L63673: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 47)
    goto L4893;
  if (absneg_operator (x2, TFmode))
    {
      operands[3] = x2;
      goto L4760;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4893: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, TFmode))
    {
      operands[2] = x3;
      goto L4894;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4894: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, TFmode))
    {
      operands[3] = x3;
      goto L4895;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4895: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, TFmode))
    {
      operands[4] = x3;
      goto L4896;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4896: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (nonimmediate_operand (x3, TFmode))
    {
      operands[5] = x3;
      goto L4897;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4897: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L4898;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L4899;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4899: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (TFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (TFmode == TFmode))))
    {
      return 421;  /* copysigntf3_var */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4760: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, TFmode))
    {
      operands[1] = x3;
      goto L4761;
    }
  x2 = XEXP (x1, 0);
  goto L667;

 L4761: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4762;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L4763;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L4763: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8895 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 403;  /* *absnegtf2_sse */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L667;

 L668: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L63674;
    case HImode:
      goto L63675;
    default:
      break;
    }
  goto L7344;

 L63674: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, QImode))
    {
      operands[0] = x3;
      goto L669;
    }
 L63676: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[0] = x3;
      goto L1502;
    }
  goto L7344;

 L669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L670;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L63676;

 L670: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L671;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L63676;

 L671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 2682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 102;  /* *movstrictqi_xor */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L63676;

 L1502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L63677;
  x2 = XEXP (x1, 0);
  goto L7344;

 L63677: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L1503;
    case MINUS:
      goto L2079;
    case AND:
      goto L3537;
    case IOR:
      goto L3870;
    case XOR:
      goto L3886;
    case ASHIFT:
      goto L5118;
    case LSHIFTRT:
      goto L5529;
    case ASHIFTRT:
      goto L5545;
    case ROTATE:
      goto L6039;
    case ROTATERT:
      goto L6055;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L7344;

 L1503: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L1504;
  x2 = XEXP (x1, 0);
  goto L7344;

 L1504: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L1505;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L1505: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1506;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L1506: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 5468 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((! TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 201;  /* *addqi_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L2080;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2080: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L2081;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2082;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 6192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((! TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 238;  /* *subqi_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L3537: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L3538;
  x2 = XEXP (x1, 0);
  goto L7344;

 L3538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3539;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L3539: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3540;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L3540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 326;  /* *andqi_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L3870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L3871;
  x2 = XEXP (x1, 0);
  goto L7344;

 L3871: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3872;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L3872: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3873;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L3873: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8399 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 346;  /* *iorqi_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L3886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L3887;
  x2 = XEXP (x1, 0);
  goto L7344;

 L3887: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L3888;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L3888: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L3889;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L3889: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8399 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    {
      return 347;  /* *xorqi_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L5118: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L5119;
  x2 = XEXP (x1, 0);
  goto L7344;

 L5119: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5120;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L5120: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5121;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L5121: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9643 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_FLAG_REG_STALL
    || (operands[1] == const1_rtx
	&& (TARGET_SHIFT1
	    || (TARGET_DOUBLE_WITH_ADD && REG_P (operands[0])))))))
    {
      return 439;  /* *ashlqi3_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L5529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L5530;
  x2 = XEXP (x1, 0);
  goto L7344;

 L5530: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5531;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L5531: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5532;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L5532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10176 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1))))
    {
      return 466;  /* *lshrqi3_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L5545: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L5546;
  x2 = XEXP (x1, 0);
  goto L7344;

 L5546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L5547;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L5547: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5548;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L5548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10176 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1))))
    {
      return 467;  /* *ashrqi3_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6039: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L6040;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6040: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L6041;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6041: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6042;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6042: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10574 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1))))
    {
      return 499;  /* *rotlqi3_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L6056;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6056: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L6057;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6057: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6058;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10574 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_function_for_size_p (cfun)
    || !TARGET_PARTIAL_REG_STALL
    || (operands[1] == const1_rtx
	&& TARGET_SHIFT1))))
    {
      return 500;  /* *rotrqi3_1_slp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L63675: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, HImode))
    {
      operands[0] = x3;
      goto L681;
    }
  goto L7344;

 L681: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const0_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L682;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L682: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L683;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 2682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 103;  /* *movstricthi_xor */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L63434: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L1517;
  goto L2546;

 L1517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L1518;
  x2 = XEXP (x1, 0);
  goto L2546;

 L1518: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L63687;
    case HImode:
      goto L63688;
    case SImode:
      goto L63689;
    case DImode:
      goto L63690;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L2546;

 L63687: ATTRIBUTE_UNUSED_LABEL
  tem = recog_127 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L2546;

 L63688: ATTRIBUTE_UNUSED_LABEL
  tem = recog_128 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L2546;

 L63689: ATTRIBUTE_UNUSED_LABEL
  tem = recog_129 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L2546;

 L63690: ATTRIBUTE_UNUSED_LABEL
  tem = recog_130 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L2546;

 L2547: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == COMPARE)
    goto L2548;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2548: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L63764;
    case HImode:
      goto L63765;
    case SImode:
      goto L63766;
    case DImode:
      goto L63767;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L63764: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PLUS)
    goto L2549;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2549: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L2550;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2550: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L2551;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2551: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L2552;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2552: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L2553;
    case SET:
      goto L2607;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2554;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2554: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 265;  /* *addqi3_cconly_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2607: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L2608;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L2609;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2609: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2610;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2610: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6429 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, QImode, operands)))
    {
      return 268;  /* *addqi3_cc_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L63765: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PLUS)
    goto L2567;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2567: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L2568;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2568: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L2569;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2569: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L2570;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2570: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L2571;
    case SET:
      goto L2620;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L2572;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2572: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 266;  /* *addhi3_cconly_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L2621;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2621: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L2622;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2622: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2623;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2623: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6429 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, HImode, operands)))
    {
      return 269;  /* *addhi3_cc_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L63766: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PLUS)
    goto L2585;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2585: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L2586;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2586: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L2587;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L2588;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2588: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L2589;
    case SET:
      goto L2633;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2589: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2590;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2590: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 267;  /* *addsi3_cconly_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2633: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2634;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L2635;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2635: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2636;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2636: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 6429 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, SImode, operands)))
    {
      return 270;  /* *addsi3_cc_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L63767: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == PLUS)
    goto L2642;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2642: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L2643;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2643: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L2644;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L2644: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L2645;
  x2 = XEXP (x1, 0);
  goto L7344;

 L2645: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2646;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2646: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L2647;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L2648;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2648: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2649;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L2649: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 6429 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_binary_operator_ok (PLUS, DImode, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 271;  /* *adddi3_cc_overflow */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L7233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L63768;
    case DImode:
      goto L63769;
    default:
      break;
    }
 L6163: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == IF_THEN_ELSE)
    goto L6164;
  x2 = XEXP (x1, 0);
  goto L7344;

 L63768: ATTRIBUTE_UNUSED_LABEL
  if (indirect_branch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7234;
    }
  goto L6163;

 L7234: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L7235;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L6163;

 L7235: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7236;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L6163;

 L7236: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[1] = x3;
  goto L7237;

 L7237: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode))
    {
      return 555;  /* *tablejump_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L6163;

 L63769: ATTRIBUTE_UNUSED_LABEL
  if (indirect_branch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L7242;
    }
  goto L6163;

 L7242: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L7243;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L6163;

 L7243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == LABEL_REF)
    goto L7244;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L6163;

 L7244: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[1] = x3;
  goto L7245;

 L7245: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode))
    {
      return 556;  /* *tablejump_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  goto L6163;

 L6164: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (bt_comparison_operator (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L6165;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6165: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L63770;
    case DImode:
      goto L63771;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L63770: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case ZERO_EXTRACT:
      goto L6166;
    case AND:
      goto L6336;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6166: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L6167;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6167: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6168;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6168: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 2);
  if (GET_MODE (x5) == SImode)
    goto L63773;
  x2 = XEXP (x1, 0);
  goto L7344;

 L63773: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case ZERO_EXTEND:
      goto L6169;
    case AND:
      goto L6281;
    case REG:
    case SUBREG:
      goto L63774;
    default:
      x2 = XEXP (x1, 0);
      goto L7344;
   }
 L63774: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L6227;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6169: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, QImode))
    {
      operands[2] = x6;
      goto L6170;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6170: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6171;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6171: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6172;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6172: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6173;

 L6173: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6174;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6174: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6175;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11125 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)))
    {
      return 513;  /* *jcc_btsi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6281: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L6282;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6282: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (const_int_operand (x6, SImode))
    {
      operands[3] = x6;
      goto L6283;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6283: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6284;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6284: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6285;

 L6285: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6286;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6286: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6287;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1))
    {
      return 517;  /* *jcc_btsi_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6227: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6228;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6228: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6229;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6229: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6230;

 L6230: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6231;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6231: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6232;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6232: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11158 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)))
    {
      return 515;  /* *jcc_btsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6336: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == LSHIFTRT)
    goto L6337;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6337: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, SImode))
    {
      operands[1] = x6;
      goto L6338;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6338: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == QImode)
    goto L63776;
  x2 = XEXP (x1, 0);
  goto L7344;

 L63776: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x6, QImode))
    {
      operands[2] = x6;
      goto L6339;
    }
 L63777: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x6) == SUBREG
      && XINT (x6, 1) == 0)
    goto L6368;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6339: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6340;
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L63777;

 L6340: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6341;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L63777;

 L6341: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6342;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L63777;

 L6342: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6343;

 L6343: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6344;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L63777;

 L6344: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6345;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L63777;

 L6345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11226 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)))
    {
      return 519;  /* *jcc_btsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L63777;

 L6368: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (GET_MODE (x7) == SImode
      && GET_CODE (x7) == AND)
    goto L6369;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6369: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (register_operand (x8, SImode))
    {
      operands[2] = x8;
      goto L6370;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6370: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 1);
  if (const_int_operand (x8, SImode))
    {
      operands[3] = x8;
      goto L6371;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6371: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6372;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6372: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6373;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6373: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6374;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6374: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6375;

 L6375: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6376;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6376: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6377;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11263 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & 0x1f) == 0x1f))
    {
      return 520;  /* *jcc_btsi_mask_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L63771: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == ZERO_EXTRACT)
    goto L6195;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6195: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, DImode))
    {
      operands[1] = x5;
      goto L6196;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6196: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L6197;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6197: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 2);
  if (GET_MODE (x5) == SImode)
    goto L63778;
  x2 = XEXP (x1, 0);
  goto L7344;

 L63778: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case ZERO_EXTEND:
      goto L6198;
    case AND:
      goto L6310;
    case REG:
    case SUBREG:
      goto L63779;
    default:
      x2 = XEXP (x1, 0);
      goto L7344;
   }
 L63779: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L6254;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6198: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, QImode))
    {
      operands[2] = x6;
      goto L6199;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6199: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6200;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6200: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6201;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6201: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6202;

 L6202: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6203;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6203: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6204;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6204: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11125 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 514;  /* *jcc_btdi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6310: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L6311;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6311: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (const_int_operand (x6, SImode))
    {
      operands[3] = x6;
      goto L6312;
    }
  x2 = XEXP (x1, 0);
  goto L7344;

 L6312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6313;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6313: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6314;

 L6314: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6315;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6315: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6316;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6316: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 518;  /* *jcc_btdi_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6254: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L6255;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6255: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6256;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6256: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6257;

 L6257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6258;
  x2 = XEXP (x1, 0);
  goto L7344;

 L6258: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6259;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L6259: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11158 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 516;  /* *jcc_btdi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7344;

 L7345: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CALL)
    goto L7346;
  x2 = XEXP (x1, 0);
  goto L7431;

 L7346: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L7347;
  x2 = XEXP (x1, 0);
  goto L7431;

 L7347: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L63781;
    case DImode:
      goto L63782;
    default:
      break;
    }
 L7365: ATTRIBUTE_UNUSED_LABEL
  if (call_insn_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7366;
    }
 L7378: ATTRIBUTE_UNUSED_LABEL
  if (sibcall_insn_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7379;
    }
  x2 = XEXP (x1, 0);
  goto L7431;

 L63781: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7348;
    }
  goto L7365;

 L7348: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[2] = x3;
  goto L7349;

 L7349: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 39)
    goto L7350;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7365;

 L7350: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 11885 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      return 570;  /* *sibcall_value_memory */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7365;

 L63782: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L7357;
    }
  x2 = XEXP (x1, 0);
  goto L7431;

 L7357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[2] = x3;
  goto L7358;

 L7358: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 39)
    goto L7359;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7359: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 11885 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      return 571;  /* *sibcall_value_memory */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7366: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[2] = x3;
  goto L7367;

 L7367: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7368;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7378;

 L7368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L7369;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7378;

 L7369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7370;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7378;

 L7370: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L7371;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7378;

 L7371: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L7372;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7378;

 L7372: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11938 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && !SIBLING_CALL_P (insn)))
    {
      return 572;  /* *call_value_pop */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L7378;

 L7379: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[2] = x3;
  goto L7380;

 L7380: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7381;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L7382;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7383;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7383: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L7384;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7384: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L7385;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L7385: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && SIBLING_CALL_P (insn)))
    {
      return 573;  /* *sibcall_value_pop */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7431;

 L63435: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7432;
    }
 L63447: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9143;
    }
 L63448: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L10196;
    }
  goto L8063;

 L7432: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L63783;
  x2 = XEXP (x1, 0);
  goto L63447;

 L63783: ATTRIBUTE_UNUSED_LABEL
  tem = recog_131 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L63447;

 L9143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L63891;
  x2 = XEXP (x1, 0);
  goto L63448;

 L63891: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63893;
  x2 = XEXP (x1, 0);
  goto L63448;

 L63893: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L63895;
  x2 = XEXP (x1, 0);
  goto L63448;

 L63895: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9144;
    case 65LL:
      goto L9156;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63448;

 L9144: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9145;
    }
  x2 = XEXP (x1, 0);
  goto L63448;

 L9145: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9146;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63448;

 L9146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 745;  /* *fistsi2_floor_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63448;

 L9156: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9157;
    }
  x2 = XEXP (x1, 0);
  goto L63448;

 L9157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9158;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63448;

 L9158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 746;  /* *fistsi2_ceil_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63448;

 L10196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L63897;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63897: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63899;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63899: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L63901;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63901: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 78LL:
      goto L10197;
    case 80LL:
      goto L10233;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10197: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10198;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10198: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10199;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10200;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 18219 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 827;  /* stack_protect_set_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10233: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10234;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10234: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10235;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10235: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10236;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10236: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 829;  /* stack_tls_protect_set_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63436: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7493;
  goto L8063;

 L7493: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == COMPARE)
    goto L7494;
  x2 = XEXP (x1, 0);
  goto L8063;

 L7494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7495;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L7495: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L7496;
  x2 = XEXP (x1, 0);
  goto L8063;

 L7496: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7497;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L7497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7498;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L7498: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == CTZ)
    goto L7499;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L7499: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 12444 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI && !TARGET_AVOID_FALSE_DEP_FOR_BMI))
    {
      return 592;  /* *tzcntsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63437: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L63903;
  goto L8063;

 L63903: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L7503;
 L63904: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x2, CCZmode))
    {
      operands[0] = x2;
      goto L10258;
    }
  goto L8063;

 L7503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L7504;
  x2 = XEXP (x1, 0);
  goto L63904;

 L7504: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7505;
    }
  x2 = XEXP (x1, 0);
  goto L63904;

 L7505: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L7506;
  x2 = XEXP (x1, 0);
  goto L63904;

 L7506: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7507;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63904;

 L7507: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7508;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63904;

 L7508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == CTZ)
    goto L7509;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63904;

 L7509: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    {
      return 593;  /* *bsfsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63904;

 L10258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode)
    goto L63905;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63905: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63907;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63907: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 2)
    goto L63909;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63909: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 79LL:
      goto L10259;
    case 81LL:
      goto L10289;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10259: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63911;
    case DImode:
      goto L63912;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L63911: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10260;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10260: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (memory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L10261;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10261: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10262;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L10263;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10263: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode)))
    {
      return 831;  /* stack_protect_test_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63912: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10275;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10275: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (memory_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L10276;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10276: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10277;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L10278;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10278: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18267 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode)))
    {
      return 832;  /* stack_protect_test_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10289: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L63913;
    case DImode:
      goto L63914;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L63913: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10290;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10290: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L10291;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10291: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10292;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L10293;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10293: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode))
    {
      return 833;  /* stack_tls_protect_test_si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63914: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10305;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10305: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L10306;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L10306: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10307;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L10308;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L10308: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode))
    {
      return 834;  /* stack_tls_protect_test_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63438: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L7525;
    }
 L63444: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L8964;
    }
 L63445: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L8987;
    }
  goto L8063;

 L7525: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63915;
  x2 = XEXP (x1, 0);
  goto L63444;

 L63915: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case CTZ:
      goto L7526;
    case CLZ:
      goto L7591;
    case POPCOUNT:
      goto L8002;
    case ZERO_EXTEND:
      goto L8237;
    case PLUS:
      goto L8271;
    case UNSPEC:
      goto L63924;
    case UNSPEC_VOLATILE:
      goto L63925;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63444;

 L7526: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L7527;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L7527: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7528;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L7528: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_BMI || TARGET_GENERIC)
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 595;  /* *ctzdi2_falsedep_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L7591: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L7592;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L7592: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7593;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L7593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12576 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 600;  /* *clzdi2_lzcnt_falsedep_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8002: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L8003;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L8003: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8004;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12933 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return 626;  /* *popcountdi2_falsedep_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8237: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L8238;
  x2 = XEXP (x1, 0);
  goto L63444;

 L8238: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 19)
    goto L8239;
  x2 = XEXP (x1, 0);
  goto L63444;

 L8239: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L8240;
  x2 = XEXP (x1, 0);
  goto L63444;

 L8240: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L8241;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L8241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8242;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 13443 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_X32))
    {
      return 645;  /* *add_tp_x32_zext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8271: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 19)
    goto L8272;
  x2 = XEXP (x1, 0);
  goto L63444;

 L8272: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L8273;
  x2 = XEXP (x1, 0);
  goto L63444;

 L8273: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L8274;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L8274: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8275;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8275: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 13456 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 647;  /* *add_tp_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L63924: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 24)
    goto L9864;
  x2 = XEXP (x1, 0);
  goto L63444;

 L9864: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9865;
  x2 = XEXP (x1, 0);
  goto L63444;

 L9865: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[5] = x4;
      goto L9866;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L9866: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L9867;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L9867: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (immediate_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9868;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L9868: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, DImode))
    {
      operands[4] = x3;
      goto L9869;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L9869: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9870;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L9870: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9871;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L9871: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16566 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 793;  /* *strlenqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L63925: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L63928;
    case 2:
      goto L63929;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L63928: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 1LL:
      goto L10101;
    case 9LL:
      goto L10345;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L10101: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10102;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L10102: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10103;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L10103: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 17122 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_target_stack_probe ()) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 818;  /* allocate_stack_worker_probe_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L10345: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10346;
  x2 = XEXP (x1, 0);
  goto L63444;

 L10346: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10347;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L10347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10348;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L10348: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 9)
    goto L10349;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L10349: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 840;  /* rdtscp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L63929: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 2)
    goto L10157;
  x2 = XEXP (x1, 0);
  goto L63444;

 L10157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10158;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L10158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L10159;
    }
  x2 = XEXP (x1, 0);
  goto L63444;

 L10159: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10160;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L10160: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
    {
      return 822;  /* probe_stack_rangedi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63444;

 L8964: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63931;
  x2 = XEXP (x1, 0);
  goto L63445;

 L63931: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63934;
  x2 = XEXP (x1, 0);
  goto L63445;

 L63934: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L63937;
  x2 = XEXP (x1, 0);
  goto L63445;

 L63937: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 56LL:
      goto L8965;
    case 78LL:
      goto L10215;
    case 80LL:
      goto L10251;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63445;

 L8965: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L8966;
    }
  x2 = XEXP (x1, 0);
  goto L63445;

 L8966: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8967;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L8967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[2] = x2;
      goto L8968;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L8968: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15318 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 727;  /* fistdi2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L10215: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10216;
    }
  x2 = XEXP (x1, 0);
  goto L63445;

 L10216: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10217;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L10217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10218;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L10218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 18219 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 828;  /* stack_protect_set_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L10251: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10252;
    }
  x2 = XEXP (x1, 0);
  goto L63445;

 L10252: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10253;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L10253: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10254;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L10254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 830;  /* stack_tls_protect_set_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63445;

 L8987: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L63940;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63940: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63943;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63943: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L63946;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63946: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 56LL:
      goto L8988;
    case 64LL:
      goto L9168;
    case 65LL:
      goto L9180;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L8988: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L8989;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L8989: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8990;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L8991;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8991: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15329 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 728;  /* fistdi2_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9168: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9169;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L9169: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9170;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9170: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 747;  /* *fistdi2_floor_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9180: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9181;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L9181: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9182;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 748;  /* *fistdi2_ceil_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63439: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L7554;
    }
 L63446: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L9119;
    }
  goto L8063;

 L7554: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L63949;
  x2 = XEXP (x1, 0);
  goto L63446;

 L63949: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case CTZ:
      goto L7555;
    case CLZ:
      goto L7620;
    case MINUS:
      goto L7974;
    case POPCOUNT:
      goto L8031;
    case UNSPEC:
      goto L63958;
    case UNSPEC_VOLATILE:
      goto L63959;
    case AND:
      goto L15367;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L63446;

 L7555: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L7556;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L7556: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7557;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L7557: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 597;  /* *ctzhi2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L7620: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L7621;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L7621: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7622;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L7622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12607 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT))
    {
      return 602;  /* *clzhi2_lzcnt */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L7974: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L7975;
  x2 = XEXP (x1, 0);
  goto L63446;

 L7975: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == CLZ)
    goto L7976;
  x2 = XEXP (x1, 0);
  goto L63446;

 L7976: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L7977;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L7977: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7978;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L7978: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 624;  /* *bsrhi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L8031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L8032;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L8032: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8033;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L8033: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12971 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT))
    {
      return 628;  /* *popcounthi2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L63958: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L63962;
    case 3:
      goto L63963;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L63962: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 56)
    goto L9016;
  x2 = XEXP (x1, 0);
  goto L63446;

 L9016: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9017;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L9017: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9018;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L9018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9019;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L9019: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15387 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 733;  /* fisthi2_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L63963: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 135)
    goto L15357;
  x2 = XEXP (x1, 0);
  goto L63446;

 L15357: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V16SImode:
      goto L63964;
    case V16SFmode:
      goto L63965;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L63964: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L15358;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15358: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SImode))
    {
      operands[2] = x3;
      goto L15359;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15359: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15360;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15360: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15361;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15361: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15362;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15362: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SImode == V16SFmode
									      || V16SImode == V8DFmode
									      || V16SImode == V8DImode
									      || V16SImode == V16SImode))))
    {
      return 1468;  /* avx512f_cmpv16si3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L63965: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L15498;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15498: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[2] = x3;
      goto L15499;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15499: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15500;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15500: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15501;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15501: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15502;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15502: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode))))
    {
      return 1484;  /* avx512f_cmpv16sf3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L63959: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L63966;
  x2 = XEXP (x1, 0);
  goto L63446;

 L63966: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 39LL:
      goto L10474;
    case 40LL:
      goto L10492;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L10474: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10475;
  x2 = XEXP (x1, 0);
  goto L63446;

 L10475: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10476;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10477;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10477: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 39)
    goto L10478;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10478: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RDRND))
    {
      return 859;  /* rdrandhi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10492: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10493;
  x2 = XEXP (x1, 0);
  goto L63446;

 L10493: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10494;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10494: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10495;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10495: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCCmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 40)
    goto L10496;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L10496: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18731 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RDSEED))
    {
      return 861;  /* rdseedhi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15367: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 135)
    goto L15368;
  x2 = XEXP (x1, 0);
  goto L63446;

 L15368: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  switch (GET_MODE (x4))
    {
    case V16SImode:
      goto L63968;
    case V16SFmode:
      goto L63969;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L63968: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SImode))
    {
      operands[1] = x4;
      goto L15369;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15369: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L15370;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15370: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_7_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L15371;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15371: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L15372;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15372: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15373;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15373: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L15374;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15374: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SImode == V16SFmode
									      || V16SImode == V8DFmode
									      || V16SImode == V8DImode
									      || V16SImode == V16SImode)))))
    {
      return 1469;  /* avx512f_cmpv16si3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L63969: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SFmode))
    {
      operands[1] = x4;
      goto L15509;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15509: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V16SFmode))
    {
      operands[2] = x4;
      goto L15510;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15510: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_31_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L15511;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15511: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, HImode))
    {
      operands[4] = x3;
      goto L15512;
    }
  x2 = XEXP (x1, 0);
  goto L63446;

 L15512: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15513;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15513: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L15514;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L15514: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V16SFmode == V16SFmode
									      || V16SFmode == V8DFmode
									      || V16SFmode == V8DImode
									      || V16SFmode == V16SImode)))))
    {
      return 1485;  /* avx512f_cmpv16sf3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L63446;

 L9119: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L63970;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63970: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63972;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63972: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L63974;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63974: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9120;
    case 65LL:
      goto L9132;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L9120: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9121;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L9121: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9122;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9122: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 743;  /* *fisthi2_floor_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9132: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9133;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L9133: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9134;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L9134: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()))
    {
      return 744;  /* *fisthi2_ceil_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63440: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L8122;
  goto L8063;

 L8122: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 27)
    goto L8123;
  x2 = XEXP (x1, 0);
  goto L8063;

 L8123: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L8124;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L8124: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8125;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L8126;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8126: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13164 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT))
    {
      return 636;  /* *parityhi2_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63441: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L8684;
    }
  goto L8063;

 L8684: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode)
    goto L63976;
 L8715: ATTRIBUTE_UNUSED_LABEL
  if (const_double_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8716;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L63976: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L63986;
  goto L8715;

 L63986: ATTRIBUTE_UNUSED_LABEL
  tem = recog_132 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L8715;

 L8716: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8717;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8718;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L8719;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8719: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8720;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8720: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14356 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && standard_80387_constant_p (operands[3]) == 2))
    {
      return 706;  /* fptanxf4_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63442: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L17908;
    }
  goto L8063;

 L17908: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == FMA)
    goto L17909;
  if (const_double_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L8725;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == NEG)
    goto L17910;
  x2 = XEXP (x1, 0);
  goto L8063;

 L17910: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L17911;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L17912;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17912: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == NEG)
    goto L17913;
  x2 = XEXP (x1, 0);
  goto L8063;

 L17913: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SFmode))
    {
      operands[3] = x4;
      goto L17914;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17914: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17915;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L17915: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17916;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L17916: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1745;  /* *fma_fnmsub_sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8725: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8726;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8727;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L8728;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8728: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8729;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8729: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L8730;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8730: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14370 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations
   && standard_80387_constant_p (operands[3]) == 2))
    {
      return 707;  /* fptan_extendsfxf4_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63443: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L17929;
    }
  goto L8063;

 L17929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == FMA)
    goto L17930;
  if (const_double_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L8735;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == NEG)
    goto L17931;
  x2 = XEXP (x1, 0);
  goto L8063;

 L17931: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L17932;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17932: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L17933;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17933: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == NEG)
    goto L17934;
  x2 = XEXP (x1, 0);
  goto L8063;

 L17934: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DFmode))
    {
      operands[3] = x4;
      goto L17935;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L17935: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L17936;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L17936: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L17937;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L17937: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 3405 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_FMA || TARGET_FMA4)))
    {
      return 1747;  /* *fma_fnmsub_df */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8735: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8736;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8737;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8737: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L8738;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8738: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L8739;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8739: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L8740;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L8740: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14370 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
       || TARGET_MIX_SSE_I387)
   && flag_unsafe_math_optimizations
   && standard_80387_constant_p (operands[3]) == 2))
    {
      return 708;  /* fptan_extenddfxf4_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63475: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V4SImode))
    {
      operands[5] = x2;
      goto L49667;
    }
  if (register_operand (x2, V4SImode))
    {
      operands[0] = x2;
      goto L11943;
    }
  goto L8063;

 L49667: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64026;
    case DImode:
      goto L64027;
    default:
      break;
    }
  goto L8063;

 L64026: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49668;
  goto L8063;

 L49668: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49669;
    }
  goto L8063;

 L49669: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64028;
    case V2DImode:
      goto L64029;
    default:
      break;
    }
  goto L8063;

 L64028: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49670;
    }
  goto L8063;

 L49670: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49671;
    }
  goto L8063;

 L49671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49672;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49672: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49673;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49673: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L49674;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49674: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49675;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49675: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49676;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49676: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4513;  /* *avx512f_scattersiv4si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64029: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50222;
    }
  goto L8063;

 L50222: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50223;
    }
  goto L8063;

 L50223: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50224;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50224: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50225;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50225: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L50226;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50226: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50227;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50228;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50228: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4537;  /* *avx512f_scatterdiv4si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64027: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49691;
  goto L8063;

 L49691: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49692;
    }
  goto L8063;

 L49692: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64030;
    case V2DImode:
      goto L64031;
    default:
      break;
    }
  goto L8063;

 L64030: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49693;
    }
  goto L8063;

 L49693: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49694;
    }
  goto L8063;

 L49694: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49695;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49695: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49696;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49696: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L49697;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49697: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49698;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49699;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49699: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4514;  /* *avx512f_scattersiv4si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64031: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50245;
    }
  goto L8063;

 L50245: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50246;
    }
  goto L8063;

 L50246: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50247;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50247: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50248;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50248: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L50249;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50249: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50250;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50251;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50251: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4538;  /* *avx512f_scatterdiv4si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L11943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode)
    goto L64032;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64032: ATTRIBUTE_UNUSED_LABEL
  tem = recog_134 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63468: ATTRIBUTE_UNUSED_LABEL
  tem = recog_138 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L8063;

 L63472: ATTRIBUTE_UNUSED_LABEL
  tem = recog_142 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L8063;

 L63476: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V4SFmode))
    {
      operands[5] = x2;
      goto L49713;
    }
  if (register_operand (x2, V4SFmode))
    {
      operands[0] = x2;
      goto L12500;
    }
  goto L8063;

 L49713: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64328;
    case DImode:
      goto L64329;
    default:
      break;
    }
  goto L8063;

 L64328: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49714;
  goto L8063;

 L49714: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49715;
    }
  goto L8063;

 L49715: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64330;
    case V2DImode:
      goto L64331;
    default:
      break;
    }
  goto L8063;

 L64330: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49716;
    }
  goto L8063;

 L49716: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49717;
    }
  goto L8063;

 L49717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49718;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49718: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49719;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49719: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L49720;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49720: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49721;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49722;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49722: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4515;  /* *avx512f_scattersiv4sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64331: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50268;
    }
  goto L8063;

 L50268: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50269;
    }
  goto L8063;

 L50269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50270;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50270: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50271;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50271: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L50272;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50272: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50273;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50273: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50274;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50274: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4539;  /* *avx512f_scatterdiv4sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64329: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49737;
  goto L8063;

 L49737: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49738;
    }
  goto L8063;

 L49738: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L64332;
    case V2DImode:
      goto L64333;
    default:
      break;
    }
  goto L8063;

 L64332: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49739;
    }
  goto L8063;

 L49739: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49740;
    }
  goto L8063;

 L49740: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49741;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49741: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49742;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49742: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L49743;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49743: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49744;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49744: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49745;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49745: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4516;  /* *avx512f_scattersiv4sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64333: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50291;
    }
  goto L8063;

 L50291: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50292;
    }
  goto L8063;

 L50292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50293;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50293: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50294;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50294: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SFmode))
    {
      operands[3] = x3;
      goto L50295;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50295: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50296;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50296: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50297;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50297: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 546 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4540;  /* *avx512f_scatterdiv4sf */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L12500: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SFmode)
    goto L64335;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64335: ATTRIBUTE_UNUSED_LABEL
  tem = recog_146 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63470: ATTRIBUTE_UNUSED_LABEL
  tem = recog_150 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L8063;

 L63474: ATTRIBUTE_UNUSED_LABEL
  tem = recog_153 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L8063;

 L63478: ATTRIBUTE_UNUSED_LABEL
  tem = recog_157 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L8063;

 L63457: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L15426;
    }
  goto L8063;

 L15426: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L64856;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64856: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L64858;
    case AND:
      goto L15437;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64858: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 135)
    goto L15427;
  x2 = XEXP (x1, 0);
  goto L8063;

 L15427: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  switch (GET_MODE (x3))
    {
    case V8DImode:
      goto L64859;
    case V8DFmode:
      goto L64860;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64859: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L15428;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DImode))
    {
      operands[2] = x3;
      goto L15429;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15429: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_7_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15430;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15430: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15431;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15431: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15432;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15432: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DImode == V16SFmode
									      || V8DImode == V8DFmode
									      || V8DImode == V8DImode
									      || V8DImode == V16SImode))))
    {
      return 1476;  /* avx512f_cmpv8di3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64860: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L15568;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15568: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[2] = x3;
      goto L15569;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15569: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_31_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L15570;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15570: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15571;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15571: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15572;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15572: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode))))
    {
      return 1492;  /* avx512f_cmpv8df3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15437: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 135)
    goto L15438;
  x2 = XEXP (x1, 0);
  goto L8063;

 L15438: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  switch (GET_MODE (x4))
    {
    case V8DImode:
      goto L64861;
    case V8DFmode:
      goto L64862;
    case V4SFmode:
      goto L64863;
    case V2DFmode:
      goto L64864;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64861: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[1] = x4;
      goto L15439;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15439: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L15440;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15440: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_7_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L15441;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L15442;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15442: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15443;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15443: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L15444;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15444: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DImode == V16SFmode
									      || V8DImode == V8DFmode
									      || V8DImode == V8DImode
									      || V8DImode == V16SImode)))))
    {
      return 1477;  /* avx512f_cmpv8di3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64862: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L15579;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15579: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[2] = x4;
      goto L15580;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15580: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_31_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L15581;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15581: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[4] = x3;
      goto L15582;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15582: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15583;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15583: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L15584;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 86 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2512 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && (V8DFmode == V16SFmode
									      || V8DFmode == V8DFmode
									      || V8DFmode == V8DImode
									      || V8DFmode == V16SImode)))))
    {
      return 1493;  /* avx512f_cmpv8df3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64863: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L15919;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V4SFmode))
    {
      operands[2] = x4;
      goto L15920;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15920: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_31_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L15963;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15963: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == AND)
    goto L15964;
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15922;
  x2 = XEXP (x1, 0);
  goto L8063;

 L15964: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, QImode))
    {
      operands[4] = x4;
      goto L15965;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15965: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15966;
  x2 = XEXP (x1, 0);
  goto L8063;

 L15966: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15967;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15967: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L15968;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15968: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1539;  /* avx512f_vmcmpv4sf3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15923;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15923: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15924;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15924: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 1535;  /* avx512f_vmcmpv4sf3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64864: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L15939;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15939: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, V2DFmode))
    {
      operands[2] = x4;
      goto L15940;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15940: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const_0_to_31_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L15987;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15987: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == AND)
    goto L15988;
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15942;
  x2 = XEXP (x1, 0);
  goto L8063;

 L15988: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, QImode))
    {
      operands[4] = x4;
      goto L15989;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L15989: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L15990;
  x2 = XEXP (x1, 0);
  goto L8063;

 L15990: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15991;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15991: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L15992;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15992: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2588 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1541;  /* avx512f_vmcmpv2df3_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15942: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L15943;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15943: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L15944;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L15944: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 2570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 251 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))))
    {
      return 1537;  /* avx512f_vmcmpv2df3_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63458: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L16043;
  goto L8063;

 L16043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == COMPARE)
    goto L16044;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16044: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L64865;
    case DFmode:
      goto L64866;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64865: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L16045;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16045: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[0] = x4;
      goto L16046;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16046: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16047;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16047: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16048;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16048: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L16049;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16049: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L16050;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16050: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16051;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16051: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16052;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16052: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16053;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16053: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L16054;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16054: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2616 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode))))
    {
      return 1549;  /* sse_comi_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64866: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L16071;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16071: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[0] = x4;
      goto L16072;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16072: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16073;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16073: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16074;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16074: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L16075;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16075: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L16076;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16076: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16077;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16077: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16078;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16078: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16079;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16079: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L16080;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16080: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2616 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode))))
    {
      return 1551;  /* sse2_comi_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63459: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L16095;
  goto L8063;

 L16095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPUmode
      && GET_CODE (x2) == COMPARE)
    goto L16096;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16096: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L64867;
    case DFmode:
      goto L64868;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64867: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L16097;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16097: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[0] = x4;
      goto L16098;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16098: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16099;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16099: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16100;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16100: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L16101;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16101: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SFmode))
    {
      operands[1] = x4;
      goto L16102;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16102: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16103;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16103: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16104;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16104: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16105;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16105: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L16106;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16106: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2636 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (SFmode))))
    {
      return 1553;  /* sse_ucomi_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64868: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == VEC_SELECT)
    goto L16123;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16123: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[0] = x4;
      goto L16124;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16124: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16125;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16125: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16126;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16126: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode
      && GET_CODE (x3) == VEC_SELECT)
    goto L16127;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16127: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V2DFmode))
    {
      operands[1] = x4;
      goto L16128;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L16128: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == PARALLEL
      && XVECLEN (x4, 0) == 1)
    goto L16129;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16129: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L16130;
  x2 = XEXP (x1, 0);
  goto L8063;

 L16130: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L16131;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16131: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L16132;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L16132: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && 
#line 2636 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(SSE_FLOAT_MODE_P (DFmode))))
    {
      return 1555;  /* sse2_ucomi_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63467: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V16SImode))
    {
      operands[5] = x2;
      goto L49299;
    }
  if (register_operand (x2, V16SImode))
    {
      operands[0] = x2;
      goto L20143;
    }
  goto L8063;

 L49299: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64869;
    case DImode:
      goto L64870;
    default:
      break;
    }
  goto L8063;

 L64869: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49300;
  goto L8063;

 L49300: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49301;
    }
  goto L8063;

 L49301: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V16SImode:
      goto L64871;
    case V8DImode:
      goto L64872;
    default:
      break;
    }
  goto L8063;

 L64871: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L49302;
    }
  goto L8063;

 L49302: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49303;
    }
  goto L8063;

 L49303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49304;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49304: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L49305;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49305: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L49306;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49306: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49307;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L49308;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49308: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4497;  /* *avx512f_scattersiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64872: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49854;
    }
  goto L8063;

 L49854: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49855;
    }
  goto L8063;

 L49855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49856;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49856: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49857;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L49858;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49858: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49859;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49860;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49860: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4521;  /* *avx512f_scatterdiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64870: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49323;
  goto L8063;

 L49323: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49324;
    }
  goto L8063;

 L49324: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V16SImode:
      goto L64873;
    case V8DImode:
      goto L64874;
    default:
      break;
    }
  goto L8063;

 L64873: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V16SImode))
    {
      operands[2] = x4;
      goto L49325;
    }
  goto L8063;

 L49325: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49326;
    }
  goto L8063;

 L49326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49327;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49327: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, HImode))
    {
      operands[6] = x3;
      goto L49328;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[3] = x3;
      goto L49329;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49329: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49330;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L49331;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49331: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4498;  /* *avx512f_scattersiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64874: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49877;
    }
  goto L8063;

 L49877: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49878;
    }
  goto L8063;

 L49878: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49879;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49879: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49880;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49880: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L49881;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49881: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49882;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49882: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49883;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49883: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4522;  /* *avx512f_scatterdiv16si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L20143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16SImode)
    goto L64875;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64875: ATTRIBUTE_UNUSED_LABEL
  tem = recog_158 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63471: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V8SImode))
    {
      operands[5] = x2;
      goto L49483;
    }
  if (register_operand (x2, V8SImode))
    {
      operands[0] = x2;
      goto L20207;
    }
  goto L8063;

 L49483: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64907;
    case DImode:
      goto L64908;
    default:
      break;
    }
  goto L8063;

 L64907: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49484;
  goto L8063;

 L49484: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49485;
    }
  goto L8063;

 L49485: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64909;
    case V4DImode:
      goto L64910;
    default:
      break;
    }
  goto L8063;

 L64909: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49486;
    }
  goto L8063;

 L49486: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49487;
    }
  goto L8063;

 L49487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49488;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49488: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49489;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L49490;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49490: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49491;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49491: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49492;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49492: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4505;  /* *avx512f_scattersiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64910: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50038;
    }
  goto L8063;

 L50038: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50039;
    }
  goto L8063;

 L50039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50040;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50040: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50041;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50041: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L50042;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50042: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50043;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50044;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50044: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4529;  /* *avx512f_scatterdiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64908: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49507;
  goto L8063;

 L49507: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49508;
    }
  goto L8063;

 L49508: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64911;
    case V4DImode:
      goto L64912;
    default:
      break;
    }
  goto L8063;

 L64911: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49509;
    }
  goto L8063;

 L49509: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49510;
    }
  goto L8063;

 L49510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49511;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49511: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49512;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49512: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8SImode))
    {
      operands[3] = x3;
      goto L49513;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49513: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49514;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49515;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49515: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4506;  /* *avx512f_scattersiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64912: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50061;
    }
  goto L8063;

 L50061: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50062;
    }
  goto L8063;

 L50062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50063;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50063: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50064;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50064: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4SImode))
    {
      operands[3] = x3;
      goto L50065;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50065: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50066;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50066: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50067;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50067: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 544 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4530;  /* *avx512f_scatterdiv8si */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L20207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8SImode)
    goto L64913;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64913: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L64920;
    case VEC_MERGE:
      goto L20224;
    case FIX:
      goto L21228;
    case UNSIGNED_FIX:
      goto L21260;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64920: ATTRIBUTE_UNUSED_LABEL
  tem = recog_159 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L20224: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8SImode)
    goto L64954;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64954: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case UNSPEC:
      goto L64958;
    case FIX:
      goto L21245;
    case UNSIGNED_FIX:
      goto L21277;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64958: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x3, 0) == 1)
    goto L64960;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64960: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x3, 1))
    {
    case 150LL:
      goto L20225;
    case 41LL:
      goto L21089;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L20225: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  switch (GET_MODE (x4))
    {
    case V8SFmode:
      goto L64962;
    case V8DFmode:
      goto L64963;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L64962: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8SFmode))
    {
      operands[1] = x4;
      goto L20226;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L20226: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L20227;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L20227: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L20228;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L20228: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L20229;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L20229: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L20230;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L20230: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 72 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F) && (
#line 4081 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 333 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)))))
    {
      return 1966;  /* avx512vl_ufix_notruncv8sfv8si_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64963: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21162;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21162: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L21163;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21163: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21164;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21164: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21165;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21165: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21166;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21166: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2082;  /* ufix_notruncv8dfv8si2_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21089: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21090;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21090: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L21091;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21091: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21092;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21092: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21093;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21093: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const_4_or_8_to_11_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21094;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21094: ATTRIBUTE_UNUSED_LABEL
  if (
#line 140 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2073;  /* avx512f_cvtpd2dq512_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21245: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21246;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21246: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L21247;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21248;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21248: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21249;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21249: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21250;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21250: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2092;  /* fix_truncv8dfv8si2_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21277: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8DFmode))
    {
      operands[1] = x4;
      goto L21278;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21278: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (vector_move_operand (x3, V8SImode))
    {
      operands[2] = x3;
      goto L21279;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21279: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L21280;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21280: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21281;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21281: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L21282;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21282: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2096;  /* ufix_truncv8dfv8si2_mask_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21228: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21229;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21229: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21230;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21230: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21231;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21231: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2090;  /* fix_truncv8dfv8si2_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21260: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L21261;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L21261: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 169)
    goto L21262;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21262: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (const48_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L21263;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L21263: ATTRIBUTE_UNUSED_LABEL
  if (
#line 175 "../../gcc-5.1.0/gcc/config/i386/subst.md"
(TARGET_AVX512F))
    {
      return 2094;  /* ufix_truncv8dfv8si2_round */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63469: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V8DImode))
    {
      operands[5] = x2;
      goto L49391;
    }
  if (register_operand (x2, V8DImode))
    {
      operands[0] = x2;
      goto L20271;
    }
  goto L8063;

 L49391: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L64964;
    case DImode:
      goto L64965;
    default:
      break;
    }
  goto L8063;

 L64964: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49392;
  goto L8063;

 L49392: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49393;
    }
  goto L8063;

 L49393: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64966;
    case V8DImode:
      goto L64967;
    default:
      break;
    }
  goto L8063;

 L64966: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49394;
    }
  goto L8063;

 L49394: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49395;
    }
  goto L8063;

 L49395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49396;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49396: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49397;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49397: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L49398;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49398: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49399;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49399: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49400;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49400: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4501;  /* *avx512f_scattersiv8di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64967: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49946;
    }
  goto L8063;

 L49946: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49947;
    }
  goto L8063;

 L49947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49948;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49948: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49949;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49949: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L49950;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49950: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49951;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49952;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49952: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 4525;  /* *avx512f_scatterdiv8di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64965: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49415;
  goto L8063;

 L49415: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49416;
    }
  goto L8063;

 L49416: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V8SImode:
      goto L64968;
    case V8DImode:
      goto L64969;
    default:
      break;
    }
  goto L8063;

 L64968: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8SImode))
    {
      operands[2] = x4;
      goto L49417;
    }
  goto L8063;

 L49417: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49418;
    }
  goto L8063;

 L49418: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49419;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49419: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49420;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L49421;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49421: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49422;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49423;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49423: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4502;  /* *avx512f_scattersiv8di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L64969: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V8DImode))
    {
      operands[2] = x4;
      goto L49969;
    }
  goto L8063;

 L49969: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49970;
    }
  goto L8063;

 L49970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49971;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49971: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49972;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49972: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[3] = x3;
      goto L49973;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49973: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49974;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49974: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49975;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49975: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 4526;  /* *avx512f_scatterdiv8di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L20271: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8DImode)
    goto L64970;
  x2 = XEXP (x1, 0);
  goto L8063;

 L64970: ATTRIBUTE_UNUSED_LABEL
  tem = recog_160 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63463: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16QImode))
    {
      operands[0] = x2;
      goto L39110;
    }
  goto L8063;

 L39110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode)
    goto L65018;
  x2 = XEXP (x1, 0);
  goto L8063;

 L65018: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L65021;
    case VEC_CONCAT:
      goto L40587;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L8063;

 L65021: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 5:
      goto L65023;
    case 3:
      goto L65024;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L65023: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 121)
    goto L39111;
  x2 = XEXP (x1, 0);
  goto L8063;

 L39111: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L39112;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39112: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39113;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39113: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L39114;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39114: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L39115;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39115: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L39116;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39116: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39117;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39117: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39118;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L39119;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39119: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L39120;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39120: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L39121;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39121: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[3]))
    goto L39122;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39122: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[4]))
    goto L39123;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39123: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[5])
      && 
#line 14852 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3692;  /* sse4_2_pcmpestrm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65024: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 122)
    goto L39205;
  x2 = XEXP (x1, 0);
  goto L8063;

 L39205: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[1] = x3;
      goto L39206;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39206: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L39207;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39207: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39208;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L39208: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39209;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39210;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L39211;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39211: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L39212;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39212: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L39213;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L39213: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 15035 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3697;  /* sse4_2_pcmpistrm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L40587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == TRUNCATE)
    goto L40588;
  x2 = XEXP (x1, 0);
  goto L8063;

 L40588: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V8HImode))
    {
      operands[1] = x4;
      goto L40589;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L40589: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V8QImode
      && GET_CODE (x3) == TRUNCATE)
    goto L40590;
  x2 = XEXP (x1, 0);
  goto L8063;

 L40590: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V8HImode))
    {
      operands[2] = x4;
      goto L40591;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L40591: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L40592;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L40592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40593;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L40593: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15813 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 3809;  /* xop_pperm_pack_v8hi_v16qi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63464: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8HImode))
    {
      operands[0] = x2;
      goto L40575;
    }
  goto L8063;

 L40575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V8HImode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L40576;
  x2 = XEXP (x1, 0);
  goto L8063;

 L40576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == TRUNCATE)
    goto L40577;
  x2 = XEXP (x1, 0);
  goto L8063;

 L40577: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, V4SImode))
    {
      operands[1] = x4;
      goto L40578;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L40578: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == V4HImode
      && GET_CODE (x3) == TRUNCATE)
    goto L40579;
  x2 = XEXP (x1, 0);
  goto L8063;

 L40579: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L40580;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L40580: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L40581;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L40581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16QImode))
    {
      operands[3] = x2;
      goto L40582;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L40582: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15800 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_XOP && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    {
      return 3808;  /* xop_pperm_pack_v4si_v8hi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L63477: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V2DImode))
    {
      operands[5] = x2;
      goto L49759;
    }
  if (register_operand (x2, V2DImode))
    {
      operands[0] = x2;
      goto L44723;
    }
  goto L8063;

 L49759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L65025;
    case DImode:
      goto L65026;
    default:
      break;
    }
  goto L8063;

 L65025: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49760;
  goto L8063;

 L49760: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49761;
    }
  goto L8063;

 L49761: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L65027;
    case V2DImode:
      goto L65028;
    default:
      break;
    }
  goto L8063;

 L65027: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49762;
    }
  goto L8063;

 L49762: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49763;
    }
  goto L8063;

 L49763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49764;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49764: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49765;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49765: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L49766;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49766: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49767;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49768;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49768: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4517;  /* *avx512f_scattersiv2di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65028: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50314;
    }
  goto L8063;

 L50314: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50315;
    }
  goto L8063;

 L50315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50316;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50316: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50317;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50317: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L50318;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50318: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50319;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50319: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50320;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50320: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4541;  /* *avx512f_scatterdiv2di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65026: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49783;
  goto L8063;

 L49783: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49784;
    }
  goto L8063;

 L49784: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L65029;
    case V2DImode:
      goto L65030;
    default:
      break;
    }
  goto L8063;

 L65029: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49785;
    }
  goto L8063;

 L49785: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49786;
    }
  goto L8063;

 L49786: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49787;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49787: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49788;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49788: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L49789;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49789: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49790;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49791;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49791: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4518;  /* *avx512f_scattersiv2di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65030: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V2DImode))
    {
      operands[2] = x4;
      goto L50337;
    }
  goto L8063;

 L50337: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50338;
    }
  goto L8063;

 L50338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50339;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50339: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50340;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50340: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V2DImode))
    {
      operands[3] = x3;
      goto L50341;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50341: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50342;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50343;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50343: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4542;  /* *avx512f_scatterdiv2di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L44723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V2DImode)
    goto L65031;
  x2 = XEXP (x1, 0);
  goto L8063;

 L65031: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65033;
  x2 = XEXP (x1, 0);
  goto L8063;

 L65033: ATTRIBUTE_UNUSED_LABEL
  tem = recog_161 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L63473: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x2, V4DImode))
    {
      operands[5] = x2;
      goto L49575;
    }
  if (register_operand (x2, V4DImode))
    {
      operands[0] = x2;
      goto L44839;
    }
  goto L8063;

 L49575: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L65061;
    case DImode:
      goto L65062;
    default:
      break;
    }
  goto L8063;

 L65061: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49576;
  goto L8063;

 L49576: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L49577;
    }
  goto L8063;

 L49577: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L65063;
    case V4DImode:
      goto L65064;
    default:
      break;
    }
  goto L8063;

 L65063: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49578;
    }
  goto L8063;

 L49578: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49579;
    }
  goto L8063;

 L49579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49580;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49580: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49581;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49581: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L49582;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49582: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49583;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49583: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49584;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4509;  /* *avx512f_scattersiv4di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65064: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50130;
    }
  goto L8063;

 L50130: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50131;
    }
  goto L8063;

 L50131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50132;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50132: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50133;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50133: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L50134;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50134: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50135;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50135: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50136;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50136: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4533;  /* *avx512f_scatterdiv4di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65062: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 146)
    goto L49599;
  goto L8063;

 L49599: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (vsib_address_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L49600;
    }
  goto L8063;

 L49600: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  switch (GET_MODE (x4))
    {
    case V4SImode:
      goto L65065;
    case V4DImode:
      goto L65066;
    default:
      break;
    }
  goto L8063;

 L65065: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4SImode))
    {
      operands[2] = x4;
      goto L49601;
    }
  goto L8063;

 L49601: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L49602;
    }
  goto L8063;

 L49602: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L49603;
  x2 = XEXP (x1, 0);
  goto L8063;

 L49603: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L49604;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49604: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L49605;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L49605: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L49606;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L49607;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L49607: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18313 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && ((((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4510;  /* *avx512f_scattersiv4di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L65066: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, V4DImode))
    {
      operands[2] = x4;
      goto L50153;
    }
  goto L8063;

 L50153: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (const1248_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L50154;
    }
  goto L8063;

 L50154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 154)
    goto L50155;
  x2 = XEXP (x1, 0);
  goto L8063;

 L50155: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, QImode))
    {
      operands[6] = x3;
      goto L50156;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50156: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V4DImode))
    {
      operands[3] = x3;
      goto L50157;
    }
  x2 = XEXP (x1, 0);
  goto L8063;

 L50157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L50158;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L50159;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L50159: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18349 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && (((
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 545 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512VL))))
    {
      return 4534;  /* *avx512f_scatterdiv4di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L8063;

 L44839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4DImode)
    goto L65067;
  x2 = XEXP (x1, 0);
  goto L8063;

 L65067: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65069;
  x2 = XEXP (x1, 0);
  goto L8063;

 L65069: ATTRIBUTE_UNUSED_LABEL
  tem = recog_162 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L8063;

 L8064: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[0] = x3;
      goto L8065;
    }
  goto ret0;

 L8065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == BSWAP)
    goto L8066;
  goto ret0;

 L8066: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L8067;
  goto ret0;

 L8067: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8068;
  goto ret0;

 L8068: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L65097;
  goto ret0;

 L65097: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65099;
  goto ret0;

 L65099: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L65101;
  goto ret0;

 L65101: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13041 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_XCHGB || optimize_function_for_size_p (cfun)))
    {
      return 632;  /* *bswaphi_lowpart_1 */
    }
 L65102: ATTRIBUTE_UNUSED_LABEL
  return 633;  /* bswaphi_lowpart */

 L10513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == IF_THEN_ELSE)
    goto L10514;
  goto ret0;

 L10514: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == NE)
    goto L10515;
  goto ret0;

 L10515: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 37)
    goto L10516;
  goto ret0;

 L10516: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10517;
  goto ret0;

 L10517: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10518;
  goto ret0;

 L10518: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L10519;
  goto ret0;

 L10519: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[1] = x4;
  goto L10520;

 L10520: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L10521;
  goto ret0;

 L10521: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10522;
  goto ret0;

 L10522: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L10523;
    }
  goto ret0;

 L10523: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 41)
    goto L10524;
  goto ret0;

 L10524: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[0])
      && 
#line 18785 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RTM))
    {
      return 864;  /* xbegin_1 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_164 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  operands[0] = x2;
  goto L51705;
 L51725: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L65118;
    case QImode:
      goto L65120;
    case HImode:
      goto L65121;
    case SImode:
      goto L65122;
    case CCZmode:
      goto L65123;
    default:
      break;
    }
  goto ret0;

 L51705: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 196)
    goto L51706;
  x2 = XEXP (x1, 0);
  goto L51725;

 L51706: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L51707;
  x2 = XEXP (x1, 0);
  goto L51725;

 L51707: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L51708;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L51725;

 L51708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 100 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!(TARGET_64BIT || TARGET_SSE2)))
    {
      return 4713;  /* mfence_nosse */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L51725;

 L65118: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L51726;
    }
 L65119: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L51759;
    }
  goto ret0;

 L51726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 199)
    goto L51727;
  x2 = XEXP (x1, 0);
  goto L65119;

 L51727: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L51728;
    }
  x2 = XEXP (x1, 0);
  goto L65119;

 L51728: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L51729;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65119;

 L51729: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L51730;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65119;

 L51730: ATTRIBUTE_UNUSED_LABEL
  if (
#line 180 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!TARGET_64BIT && (TARGET_80387 || TARGET_SSE))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4714;  /* atomic_loaddi_fpu */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65119;

 L51759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 200)
    goto L51760;
  goto ret0;

 L51760: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L51761;
    }
  goto ret0;

 L51761: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L51762;
  goto ret0;

 L51762: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L51763;
    }
  goto ret0;

 L51763: ATTRIBUTE_UNUSED_LABEL
  if (
#line 268 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!TARGET_64BIT && (TARGET_80387 || TARGET_SSE))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4718;  /* atomic_storedi_fpu */
    }
  goto ret0;

 L65120: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L51855;
    }
 L65124: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L51986;
    }
  goto ret0;

 L51855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 59)
    goto L51856;
  x2 = XEXP (x1, 0);
  goto L65124;

 L51856: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L51857;
    }
  x2 = XEXP (x1, 0);
  goto L65124;

 L51857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51858;
    }
  x2 = XEXP (x1, 0);
  goto L65124;

 L51858: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51859;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L51859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51860;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L51860: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L65127;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L65127: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PLUS)
    goto L51861;
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      return 4731;  /* atomic_exchangeqi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L51861: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L51862;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L51862: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L51863;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L51863: ATTRIBUTE_UNUSED_LABEL
  if (
#line 436 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_XADD)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4725;  /* atomic_fetch_addqi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65124;

 L51986: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 60)
    goto L51987;
  goto ret0;

 L51987: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == QImode)
    goto L65129;
  goto ret0;

 L65129: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L51988;
    case MINUS:
      goto L52042;
    case AND:
      goto L52096;
    case IOR:
      goto L52114;
    case XOR:
      goto L52132;
    default:
     break;
   }
  goto ret0;

 L51988: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L51989;
  goto ret0;

 L51989: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L51990;
    }
  goto ret0;

 L51990: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51991;
    }
  goto ret0;

 L51991: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L51992;
  goto ret0;

 L51992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4734;  /* atomic_addqi */
    }
  goto ret0;

 L52042: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52043;
  goto ret0;

 L52043: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L52044;
    }
  goto ret0;

 L52044: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52045;
    }
  goto ret0;

 L52045: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52046;
  goto ret0;

 L52046: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4737;  /* atomic_subqi */
    }
  goto ret0;

 L52096: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52097;
  goto ret0;

 L52097: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L52098;
    }
  goto ret0;

 L52098: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52099;
    }
  goto ret0;

 L52099: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52100;
  goto ret0;

 L52100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4740;  /* atomic_andqi */
    }
  goto ret0;

 L52114: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52115;
  goto ret0;

 L52115: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L52116;
    }
  goto ret0;

 L52116: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52117;
    }
  goto ret0;

 L52117: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52118;
  goto ret0;

 L52118: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4741;  /* atomic_orqi */
    }
  goto ret0;

 L52132: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52133;
  goto ret0;

 L52133: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L52134;
    }
  goto ret0;

 L52134: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52135;
    }
  goto ret0;

 L52135: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52136;
  goto ret0;

 L52136: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4742;  /* atomic_xorqi */
    }
  goto ret0;

 L65121: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L51880;
    }
 L65125: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52004;
    }
  goto ret0;

 L51880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 59)
    goto L51881;
  x2 = XEXP (x1, 0);
  goto L65125;

 L51881: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L51882;
    }
  x2 = XEXP (x1, 0);
  goto L65125;

 L51882: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51883;
    }
  x2 = XEXP (x1, 0);
  goto L65125;

 L51883: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51884;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L51884: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51885;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L51885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65134;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L65134: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PLUS)
    goto L51886;
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      return 4732;  /* atomic_exchangehi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L51886: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L51887;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L51887: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L51888;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L51888: ATTRIBUTE_UNUSED_LABEL
  if (
#line 436 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_XADD)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4726;  /* atomic_fetch_addhi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65125;

 L52004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 60)
    goto L52005;
  goto ret0;

 L52005: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == HImode)
    goto L65136;
  goto ret0;

 L65136: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L52006;
    case MINUS:
      goto L52060;
    case AND:
      goto L52150;
    case IOR:
      goto L52168;
    case XOR:
      goto L52186;
    default:
     break;
   }
  goto ret0;

 L52006: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52007;
  goto ret0;

 L52007: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L52008;
    }
  goto ret0;

 L52008: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52009;
    }
  goto ret0;

 L52009: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52010;
  goto ret0;

 L52010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4735;  /* atomic_addhi */
    }
  goto ret0;

 L52060: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52061;
  goto ret0;

 L52061: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L52062;
    }
  goto ret0;

 L52062: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52063;
    }
  goto ret0;

 L52063: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52064;
  goto ret0;

 L52064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4738;  /* atomic_subhi */
    }
  goto ret0;

 L52150: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52151;
  goto ret0;

 L52151: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L52152;
    }
  goto ret0;

 L52152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52153;
    }
  goto ret0;

 L52153: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52154;
  goto ret0;

 L52154: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4743;  /* atomic_andhi */
    }
  goto ret0;

 L52168: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52169;
  goto ret0;

 L52169: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L52170;
    }
  goto ret0;

 L52170: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52171;
    }
  goto ret0;

 L52171: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52172;
  goto ret0;

 L52172: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4744;  /* atomic_orhi */
    }
  goto ret0;

 L52186: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52187;
  goto ret0;

 L52187: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L52188;
    }
  goto ret0;

 L52188: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52189;
    }
  goto ret0;

 L52189: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52190;
  goto ret0;

 L52190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4745;  /* atomic_xorhi */
    }
  goto ret0;

 L65122: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L51905;
    }
 L65126: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52022;
    }
  goto ret0;

 L51905: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 59)
    goto L51906;
  x2 = XEXP (x1, 0);
  goto L65126;

 L51906: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L51907;
    }
  x2 = XEXP (x1, 0);
  goto L65126;

 L51907: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51908;
    }
  x2 = XEXP (x1, 0);
  goto L65126;

 L51908: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51909;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L51909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51910;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L51910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65141;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L65141: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PLUS)
    goto L51911;
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      return 4733;  /* atomic_exchangesi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L51911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L51912;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L51912: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51913;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L51913: ATTRIBUTE_UNUSED_LABEL
  if (
#line 436 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_XADD)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 4727;  /* atomic_fetch_addsi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65126;

 L52022: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 60)
    goto L52023;
  goto ret0;

 L52023: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == SImode)
    goto L65143;
  goto ret0;

 L65143: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x3))
    {
    case PLUS:
      goto L52024;
    case MINUS:
      goto L52078;
    case AND:
      goto L52204;
    case IOR:
      goto L52222;
    case XOR:
      goto L52240;
    default:
     break;
   }
  goto ret0;

 L52024: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52025;
  goto ret0;

 L52025: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L52026;
    }
  goto ret0;

 L52026: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52027;
    }
  goto ret0;

 L52027: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52028;
  goto ret0;

 L52028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4736;  /* atomic_addsi */
    }
  goto ret0;

 L52078: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52079;
  goto ret0;

 L52079: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L52080;
    }
  goto ret0;

 L52080: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52081;
    }
  goto ret0;

 L52081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52082;
  goto ret0;

 L52082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4739;  /* atomic_subsi */
    }
  goto ret0;

 L52204: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52205;
  goto ret0;

 L52205: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L52206;
    }
  goto ret0;

 L52206: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52207;
    }
  goto ret0;

 L52207: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52208;
  goto ret0;

 L52208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4746;  /* atomic_andsi */
    }
  goto ret0;

 L52222: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52223;
  goto ret0;

 L52223: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L52224;
    }
  goto ret0;

 L52224: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52225;
    }
  goto ret0;

 L52225: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52226;
  goto ret0;

 L52226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4747;  /* atomic_orsi */
    }
  goto ret0;

 L52240: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L52241;
  goto ret0;

 L52241: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L52242;
    }
  goto ret0;

 L52242: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52243;
    }
  goto ret0;

 L52243: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52244;
  goto ret0;

 L52244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 4748;  /* atomic_xorsi */
    }
  goto ret0;

 L65123: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L51917;
  goto ret0;

 L51917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L51918;
  goto ret0;

 L51918: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L65148;
    case HImode:
      goto L65149;
    case SImode:
      goto L65150;
    default:
      break;
    }
  goto ret0;

 L65148: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L51919;
  goto ret0;

 L51919: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, QImode))
    {
      operands[0] = x4;
      goto L51920;
    }
  goto ret0;

 L51920: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L51921;
    }
  goto ret0;

 L51921: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L51922;
    }
  goto ret0;

 L51922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51923;
  goto ret0;

 L51923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L51924;
  goto ret0;

 L51924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L51925;
  goto ret0;

 L51925: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L51926;
  goto ret0;

 L51926: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L51927;
    }
  goto ret0;

 L51927: ATTRIBUTE_UNUSED_LABEL
  if (
#line 481 "../../gcc-5.1.0/gcc/config/i386/sync.md"
((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
    {
      return 4728;  /* *atomic_fetch_add_cmpqi */
    }
  goto ret0;

 L65149: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L51933;
  goto ret0;

 L51933: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, HImode))
    {
      operands[0] = x4;
      goto L51934;
    }
  goto ret0;

 L51934: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L51935;
    }
  goto ret0;

 L51935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L51936;
    }
  goto ret0;

 L51936: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51937;
  goto ret0;

 L51937: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L51938;
  goto ret0;

 L51938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L51939;
  goto ret0;

 L51939: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L51940;
  goto ret0;

 L51940: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L51941;
    }
  goto ret0;

 L51941: ATTRIBUTE_UNUSED_LABEL
  if (
#line 481 "../../gcc-5.1.0/gcc/config/i386/sync.md"
((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
    {
      return 4729;  /* *atomic_fetch_add_cmphi */
    }
  goto ret0;

 L65150: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L51947;
  goto ret0;

 L51947: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L51948;
    }
  goto ret0;

 L51948: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L51949;
    }
  goto ret0;

 L51949: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51950;
    }
  goto ret0;

 L51950: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51951;
  goto ret0;

 L51951: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L51952;
  goto ret0;

 L51952: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L51953;
  goto ret0;

 L51953: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L51954;
  goto ret0;

 L51954: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L51955;
    }
  goto ret0;

 L51955: ATTRIBUTE_UNUSED_LABEL
  if (
#line 481 "../../gcc-5.1.0/gcc/config/i386/sync.md"
((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
    {
      return 4730;  /* *atomic_fetch_add_cmpsi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_165 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L141;
 L10615: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case BND32mode:
      goto L63396;
    case BND64mode:
      goto L63397;
    default:
      break;
    }
 L7267: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case CALL:
      goto L7268;
    case SIMPLE_RETURN:
      goto L7411;
    case UNSPEC:
      goto L63398;
    case SET:
      goto L51704;
    default:
     break;
   }
  goto ret0;

 L141: ATTRIBUTE_UNUSED_LABEL
  tem = recog_163 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L10615;

 L63396: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == SET)
    goto L10616;
  goto L7267;

 L10616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, BND32mode))
    {
      operands[0] = x2;
      goto L10617;
    }
  goto L7267;

 L10617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BND32mode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 91)
    goto L10618;
  goto L7267;

 L10618: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (bnd_mem_operator (x3, SImode))
    {
      operands[3] = x3;
      goto L10619;
    }
  goto L7267;

 L10619: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 2
      && XINT (x4, 1) == 92)
    goto L10620;
  goto L7267;

 L10620: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (address_mpx_no_index_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L10621;
    }
  goto L7267;

 L10621: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L10622;
    }
  goto L7267;

 L10622: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L10623;
  x1 = XVECEXP (x0, 0, 0);
  goto L7267;

 L10623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10624;
  x1 = XVECEXP (x0, 0, 0);
  goto L7267;

 L10624: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && (
#line 18955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 881;  /* *bnd32_ldx */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L7267;

 L63397: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == SET)
    goto L10627;
  goto L7267;

 L10627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, BND64mode))
    {
      operands[0] = x2;
      goto L10628;
    }
  goto L7267;

 L10628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BND64mode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 91)
    goto L10629;
  goto L7267;

 L10629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (bnd_mem_operator (x3, DImode))
    {
      operands[3] = x3;
      goto L10630;
    }
  goto L7267;

 L10630: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 2
      && XINT (x4, 1) == 92)
    goto L10631;
  goto L7267;

 L10631: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (address_mpx_no_index_operand (x5, DImode))
    {
      operands[1] = x5;
      goto L10632;
    }
  goto L7267;

 L10632: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 1);
  if (register_operand (x5, DImode))
    {
      operands[2] = x5;
      goto L10633;
    }
  goto L7267;

 L10633: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L10634;
  x1 = XVECEXP (x0, 0, 0);
  goto L7267;

 L10634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10635;
  x1 = XVECEXP (x0, 0, 0);
  goto L7267;

 L10635: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && (
#line 18955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 882;  /* *bnd64_ldx */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L7267;

 L7268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L7269;
  goto ret0;

 L7269: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L65103;
    case DImode:
      goto L65104;
    default:
      break;
    }
 L7283: ATTRIBUTE_UNUSED_LABEL
  if (call_insn_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L7284;
    }
 L7294: ATTRIBUTE_UNUSED_LABEL
  if (sibcall_insn_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L7295;
    }
  goto ret0;

 L65103: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L7270;
    }
  goto L7283;

 L7270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[1] = x2;
  goto L7271;

 L7271: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 39)
    goto L7272;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7283;

 L7272: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 11721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      return 561;  /* *sibcall_memory */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7283;

 L65104: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L7277;
    }
  goto ret0;

 L7277: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[1] = x2;
  goto L7278;

 L7278: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 39)
    goto L7279;
  goto ret0;

 L7279: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 11721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      return 562;  /* *sibcall_memory */
    }
  goto ret0;

 L7284: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[1] = x2;
  goto L7285;

 L7285: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7286;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7294;

 L7286: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L7287;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7294;

 L7287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7288;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7294;

 L7288: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L7289;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7294;

 L7289: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L7290;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7294;

 L7290: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11768 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && !SIBLING_CALL_P (insn)))
    {
      return 563;  /* *call_pop */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L7294;

 L7295: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[1] = x2;
  goto L7296;

 L7296: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7297;
  goto ret0;

 L7297: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L7298;
  goto ret0;

 L7298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7299;
  goto ret0;

 L7299: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L7300;
  goto ret0;

 L7300: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L7301;
    }
  goto ret0;

 L7301: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11778 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && SIBLING_CALL_P (insn)))
    {
      return 564;  /* *sibcall_pop */
    }
  goto ret0;

 L7411: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L65105;
    case USE:
      goto L7421;
    default:
     break;
   }
  goto ret0;

 L65105: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 31)
    goto L7412;
  goto ret0;

 L7412: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 12134 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 579;  /* simple_return_internal_long */
    }
  goto ret0;

 L7421: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7422;
    }
  if (const_int_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7417;
    }
  goto ret0;

 L7422: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12160 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 581;  /* simple_return_indirect_internal */
    }
  goto ret0;

 L7417: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12150 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 580;  /* simple_return_pop_internal */
    }
  goto ret0;

 L63398: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L65106;
  goto ret0;

 L65106: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 93LL:
      goto L10568;
    case 94LL:
      goto L10576;
    case 95LL:
      goto L10584;
    case 90LL:
      goto L10638;
    default:
      break;
    }
  goto ret0;

 L10568: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case BND32mode:
      goto L65110;
    case BND64mode:
      goto L65111;
    default:
      break;
    }
  goto ret0;

 L65110: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, BND32mode))
    {
      operands[0] = x2;
      goto L10569;
    }
  goto ret0;

 L10569: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (address_no_seg_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10570;
    }
  goto ret0;

 L10570: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10571;
  goto ret0;

 L10571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[2] = x2;
      goto L10572;
    }
  goto ret0;

 L10572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10573;
  goto ret0;

 L10573: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 18911 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 875;  /* *bnd32_cl */
    }
  goto ret0;

 L65111: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, BND64mode))
    {
      operands[0] = x2;
      goto L10593;
    }
  goto ret0;

 L10593: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (address_no_seg_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10594;
    }
  goto ret0;

 L10594: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10595;
  goto ret0;

 L10595: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[2] = x2;
      goto L10596;
    }
  goto ret0;

 L10596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10597;
  goto ret0;

 L10597: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 18911 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 878;  /* *bnd64_cl */
    }
  goto ret0;

 L10576: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case BND32mode:
      goto L65112;
    case BND64mode:
      goto L65113;
    default:
      break;
    }
  goto ret0;

 L65112: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, BND32mode))
    {
      operands[0] = x2;
      goto L10577;
    }
  goto ret0;

 L10577: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (address_no_seg_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10578;
    }
  goto ret0;

 L10578: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10579;
  goto ret0;

 L10579: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[2] = x2;
      goto L10580;
    }
  goto ret0;

 L10580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10581;
  goto ret0;

 L10581: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 18911 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 876;  /* *bnd32_cu */
    }
  goto ret0;

 L65113: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, BND64mode))
    {
      operands[0] = x2;
      goto L10601;
    }
  goto ret0;

 L10601: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (address_no_seg_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10602;
    }
  goto ret0;

 L10602: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10603;
  goto ret0;

 L10603: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[2] = x2;
      goto L10604;
    }
  goto ret0;

 L10604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10605;
  goto ret0;

 L10605: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 18911 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 879;  /* *bnd64_cu */
    }
  goto ret0;

 L10584: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case BND32mode:
      goto L65114;
    case BND64mode:
      goto L65115;
    default:
      break;
    }
  goto ret0;

 L65114: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, BND32mode))
    {
      operands[0] = x2;
      goto L10585;
    }
  goto ret0;

 L10585: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (address_no_seg_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L10586;
    }
  goto ret0;

 L10586: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10587;
  goto ret0;

 L10587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[2] = x2;
      goto L10588;
    }
  goto ret0;

 L10588: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10589;
  goto ret0;

 L10589: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 18911 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 877;  /* *bnd32_cn */
    }
  goto ret0;

 L65115: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, BND64mode))
    {
      operands[0] = x2;
      goto L10609;
    }
  goto ret0;

 L10609: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (address_no_seg_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L10610;
    }
  goto ret0;

 L10610: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10611;
  goto ret0;

 L10611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[2] = x2;
      goto L10612;
    }
  goto ret0;

 L10612: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10613;
  goto ret0;

 L10613: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && (
#line 18911 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 880;  /* *bnd64_cn */
    }
  goto ret0;

 L10638: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65116;
    case DImode:
      goto L65117;
    default:
      break;
    }
  goto ret0;

 L65116: ATTRIBUTE_UNUSED_LABEL
  if (bnd_mem_operator (x2, SImode))
    {
      operands[3] = x2;
      goto L10639;
    }
  goto ret0;

 L10639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 92)
    goto L10640;
  goto ret0;

 L10640: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (address_mpx_no_index_operand (x4, SImode))
    {
      operands[0] = x4;
      goto L10641;
    }
  goto ret0;

 L10641: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L10642;
    }
  goto ret0;

 L10642: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, BND32mode))
    {
      operands[2] = x2;
      goto L10643;
    }
  goto ret0;

 L10643: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10644;
  goto ret0;

 L10644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[4] = x2;
      goto L10645;
    }
  goto ret0;

 L10645: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10646;
  goto ret0;

 L10646: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[4])
      && (
#line 18999 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1006 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_LP64)))
    {
      return 883;  /* *bnd32_stx */
    }
  goto ret0;

 L65117: ATTRIBUTE_UNUSED_LABEL
  if (bnd_mem_operator (x2, DImode))
    {
      operands[3] = x2;
      goto L10650;
    }
  goto ret0;

 L10650: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 92)
    goto L10651;
  goto ret0;

 L10651: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (address_mpx_no_index_operand (x4, DImode))
    {
      operands[0] = x4;
      goto L10652;
    }
  goto ret0;

 L10652: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L10653;
    }
  goto ret0;

 L10653: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, BND64mode))
    {
      operands[2] = x2;
      goto L10654;
    }
  goto ret0;

 L10654: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10655;
  goto ret0;

 L10655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (bnd_mem_operator (x2, BLKmode))
    {
      operands[4] = x2;
      goto L10656;
    }
  goto ret0;

 L10656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 96)
    goto L10657;
  goto ret0;

 L10657: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[4])
      && (
#line 18999 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MPX) && 
#line 1007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LP64)))
    {
      return 884;  /* *bnd64_stx */
    }
  goto ret0;

 L51704: ATTRIBUTE_UNUSED_LABEL
  return recog_164 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static int
recog_166 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case FFS:
      goto L7480;
    case CTZ:
      goto L7538;
    case CLZ:
      goto L7603;
    case POPCOUNT:
      goto L8014;
    case UNSPEC:
      goto L65218;
    case PLUS:
      goto L10045;
    case MINUS:
      goto L10067;
    case UNSPEC_VOLATILE:
      goto L65221;
    default:
     break;
   }
  goto ret0;

 L7480: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7481;
    }
  goto ret0;

 L7481: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7482;
  goto ret0;

 L7482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7483;
    }
  goto ret0;

 L7483: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7484;
  goto ret0;

 L7484: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12414 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_CMOVE))
    {
      return 591;  /* ffssi2_no_cmove */
    }
  goto ret0;

 L7538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7539;
    }
  goto ret0;

 L7539: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 40)
    goto L7540;
  goto ret0;

 L7540: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7541;
    }
  goto ret0;

 L7541: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7542;
  goto ret0;

 L7542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 596;  /* *ctzsi2_falsedep */
    }
  goto ret0;

 L7603: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L7604;
    }
  goto ret0;

 L7604: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 40)
    goto L7605;
  goto ret0;

 L7605: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L7606;
    }
  goto ret0;

 L7606: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7607;
  goto ret0;

 L7607: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12597 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT))
    {
      return 601;  /* *clzsi2_lzcnt_falsedep */
    }
  goto ret0;

 L8014: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8015;
    }
  goto ret0;

 L8015: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 40)
    goto L8016;
  goto ret0;

 L8016: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L8017;
    }
  goto ret0;

 L8017: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8018;
  goto ret0;

 L8018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 12954 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT))
    {
      return 627;  /* *popcountsi2_falsedep */
    }
  goto ret0;

 L65218: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65223;
    case 5:
      goto L65224;
    case 3:
      goto L65225;
    default:
      break;
    }
  goto ret0;

 L65223: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 24)
    goto L9826;
  goto ret0;

 L9826: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9827;
  goto ret0;

 L9827: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L9828;
    }
  goto ret0;

 L9828: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L9829;
    }
  goto ret0;

 L9829: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (immediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9830;
    }
  goto ret0;

 L9830: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L9831;
    }
  goto ret0;

 L9831: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9832;
  goto ret0;

 L9832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9833;
    }
  goto ret0;

 L9833: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L9834;
  goto ret0;

 L9834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 16566 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 792;  /* *strlenqi_1 */
    }
  goto ret0;

 L65224: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 121)
    goto L39041;
  goto ret0;

 L39041: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L39042;
    }
  goto ret0;

 L39042: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39043;
    }
  goto ret0;

 L39043: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16QImode)
    goto L65227;
  goto ret0;

 L65227: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L39069;
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[4] = x3;
      goto L39044;
    }
  goto ret0;

 L39069: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, V16QImode))
    {
      operands[4] = x4;
      goto L39070;
    }
  goto ret0;

 L39070: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L39071;
    }
  goto ret0;

 L39071: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[6] = x3;
      goto L39072;
    }
  goto ret0;

 L39072: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39073;
  goto ret0;

 L39073: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L39074;
    }
  goto ret0;

 L39074: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L39075;
  goto ret0;

 L39075: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39076;
  goto ret0;

 L39076: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L39077;
  goto ret0;

 L39077: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L39078;
  goto ret0;

 L39078: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[4]))
    goto L39079;
  goto ret0;

 L39079: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L39080;
  goto ret0;

 L39080: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6]))
    goto L39081;
  goto ret0;

 L39081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L39082;
  goto ret0;

 L39082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39083;
  goto ret0;

 L39083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L39084;
  goto ret0;

 L39084: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39085;
  goto ret0;

 L39085: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L39086;
  goto ret0;

 L39086: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L39087;
  goto ret0;

 L39087: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[4]))
    goto L39088;
  goto ret0;

 L39088: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L39089;
  goto ret0;

 L39089: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6])
      && 
#line 14770 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()))
    {
      return 3690;  /* *sse4_2_pcmpestr_unaligned */
    }
  goto ret0;

 L39044: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L39045;
    }
  goto ret0;

 L39045: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[6] = x3;
      goto L39046;
    }
  goto ret0;

 L39046: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39047;
  goto ret0;

 L39047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L39048;
    }
  goto ret0;

 L39048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L39049;
  goto ret0;

 L39049: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39050;
  goto ret0;

 L39050: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L39051;
  goto ret0;

 L39051: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L39052;
  goto ret0;

 L39052: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L39053;
  goto ret0;

 L39053: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6]))
    goto L39054;
  goto ret0;

 L39054: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L39055;
  goto ret0;

 L39055: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39056;
  goto ret0;

 L39056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L39057;
  goto ret0;

 L39057: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39058;
  goto ret0;

 L39058: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L39059;
  goto ret0;

 L39059: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L39060;
  goto ret0;

 L39060: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L39061;
  goto ret0;

 L39061: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6])
      && 
#line 14707 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()))
    {
      return 3689;  /* sse4_2_pcmpestr */
    }
  goto ret0;

 L65225: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 122)
    goto L39151;
  goto ret0;

 L39151: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L39152;
    }
  goto ret0;

 L39152: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == V16QImode)
    goto L65229;
  goto ret0;

 L65229: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L39172;
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L39153;
    }
  goto ret0;

 L39172: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, V16QImode))
    {
      operands[3] = x4;
      goto L39173;
    }
  goto ret0;

 L39173: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L39174;
    }
  goto ret0;

 L39174: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39175;
  goto ret0;

 L39175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L39176;
    }
  goto ret0;

 L39176: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L39177;
  goto ret0;

 L39177: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39178;
  goto ret0;

 L39178: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L39179;
  goto ret0;

 L39179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[3]))
    goto L39180;
  goto ret0;

 L39180: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L39181;
  goto ret0;

 L39181: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L39182;
  goto ret0;

 L39182: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39183;
  goto ret0;

 L39183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L39184;
  goto ret0;

 L39184: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39185;
  goto ret0;

 L39185: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L39186;
  goto ret0;

 L39186: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[3]))
    goto L39187;
  goto ret0;

 L39187: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4])
      && 
#line 14964 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()))
    {
      return 3695;  /* *sse4_2_pcmpistr_unaligned */
    }
  goto ret0;

 L39153: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L39154;
    }
  goto ret0;

 L39154: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L39155;
  goto ret0;

 L39155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L39156;
    }
  goto ret0;

 L39156: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L39157;
  goto ret0;

 L39157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39158;
  goto ret0;

 L39158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L39159;
  goto ret0;

 L39159: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L39160;
  goto ret0;

 L39160: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L39161;
  goto ret0;

 L39161: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L39162;
  goto ret0;

 L39162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L39163;
  goto ret0;

 L39163: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L39164;
  goto ret0;

 L39164: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L39165;
  goto ret0;

 L39165: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4])
      && 
#line 14910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()))
    {
      return 3694;  /* sse4_2_pcmpistr */
    }
  goto ret0;

 L10045: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10046;
    }
  goto ret0;

 L10046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L10047;
    }
  goto ret0;

 L10047: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10048;
  goto ret0;

 L10048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10049;
  goto ret0;

 L10049: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10050;
  goto ret0;

 L10050: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10051;
  goto ret0;

 L10051: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
    {
      return 813;  /* pro_epilogue_adjust_stack_si_add */
    }
  goto ret0;

 L10067: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10068;
    }
  goto ret0;

 L10068: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L10069;
    }
  goto ret0;

 L10069: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10070;
  goto ret0;

 L10070: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10071;
  goto ret0;

 L10071: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10072;
  goto ret0;

 L10072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10073;
  goto ret0;

 L10073: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
    {
      return 815;  /* pro_epilogue_adjust_stack_si_sub */
    }
  goto ret0;

 L65221: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65230;
    case 2:
      goto L65231;
    default:
      break;
    }
  goto ret0;

 L65230: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 58)
    goto L51827;
  goto ret0;

 L51827: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L51828;
    }
  goto ret0;

 L51828: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51829;
    }
  goto ret0;

 L51829: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51830;
    }
  goto ret0;

 L51830: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_int_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L51831;
    }
  goto ret0;

 L51831: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51832;
  goto ret0;

 L51832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51833;
  goto ret0;

 L51833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51834;
  goto ret0;

 L51834: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L51835;
  goto ret0;

 L51835: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L51836;
  goto ret0;

 L51836: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L51837;
  goto ret0;

 L51837: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51838;
  goto ret0;

 L51838: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 420 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_CMPXCHG))
    {
      return 4724;  /* atomic_compare_and_swapsi_1 */
    }
  goto ret0;

 L65231: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 59)
    goto L51893;
  goto ret0;

 L51893: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L51894;
    }
  goto ret0;

 L51894: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51895;
    }
  goto ret0;

 L51895: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51896;
  goto ret0;

 L51896: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51897;
  goto ret0;

 L51897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L51898;
  goto ret0;

 L51898: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L51899;
  goto ret0;

 L51899: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L51900;
    }
  goto ret0;

 L51900: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L51901;
  goto ret0;

 L51901: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 436 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_XADD))
    {
      return 4727;  /* atomic_fetch_addsi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_167 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L8977;
    }
 L65170: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9203;
    }
 L65176: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9850;
    }
  goto ret0;

 L8977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65271;
  x2 = XEXP (x1, 0);
  goto L65170;

 L65271: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65273;
  x2 = XEXP (x1, 0);
  goto L65170;

 L65273: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65275;
  x2 = XEXP (x1, 0);
  goto L65170;

 L65275: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 56LL:
      goto L8978;
    case 199LL:
      goto L51717;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65170;

 L8978: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L8979;
    }
  x2 = XEXP (x1, 0);
  goto L65170;

 L8979: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8980;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L8980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L8981;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L8981: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8982;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L8982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L8983;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L8983: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15329 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387))
    {
      return 728;  /* fistdi2_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L51717: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L51718;
    }
  x2 = XEXP (x1, 0);
  goto L65170;

 L51718: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L51719;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L51719: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L51720;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L51720: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L51721;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L51721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L51722;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L51722: ATTRIBUTE_UNUSED_LABEL
  if (
#line 180 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!TARGET_64BIT && (TARGET_80387 || TARGET_SSE)))
    {
      return 4714;  /* atomic_loaddi_fpu */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65170;

 L9203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65277;
  x2 = XEXP (x1, 0);
  goto L65176;

 L65277: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65282;
  x2 = XEXP (x1, 0);
  goto L65176;

 L65282: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65287;
  x2 = XEXP (x1, 0);
  goto L65176;

 L65287: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9204;
    case 65LL:
      goto L9226;
    case 78LL:
      goto L10205;
    case 80LL:
      goto L10241;
    case 200LL:
      goto L51750;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65176;

 L9204: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9205;
    }
  x2 = XEXP (x1, 0);
  goto L65176;

 L9205: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9206;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9207;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9207: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9208;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9209;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9209: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15690 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 749;  /* fistdi2_floor */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9226: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9227;
    }
  x2 = XEXP (x1, 0);
  goto L65176;

 L9227: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9228;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9229;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9229: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9230;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9230: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9231;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9231: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15690 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 750;  /* fistdi2_ceil */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10205: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10206;
    }
  x2 = XEXP (x1, 0);
  goto L65176;

 L10206: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10207;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10208;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10209;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10209: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10210;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 18219 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode)))
    {
      return 828;  /* stack_protect_set_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10241: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10242;
    }
  x2 = XEXP (x1, 0);
  goto L65176;

 L10242: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10243;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L10244;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10245;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10245: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10246;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L10246: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == DImode))
    {
      return 830;  /* stack_tls_protect_set_di */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L51750: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L51751;
    }
  x2 = XEXP (x1, 0);
  goto L65176;

 L51751: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L51752;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L51752: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L51753;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L51753: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L51754;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L51754: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L51755;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L51755: ATTRIBUTE_UNUSED_LABEL
  if (
#line 268 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!TARGET_64BIT && (TARGET_80387 || TARGET_SSE)))
    {
      return 4718;  /* atomic_storedi_fpu */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65176;

 L9850: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65292;
  goto ret0;

 L65292: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSPEC:
      goto L65296;
    case PLUS:
      goto L10056;
    case MINUS:
      goto L10078;
    case UNSPEC_VOLATILE:
      goto L65297;
    default:
     break;
   }
  goto ret0;

 L65296: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 24)
    goto L9851;
  goto ret0;

 L9851: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9852;
  goto ret0;

 L9852: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[5] = x4;
      goto L9853;
    }
  goto ret0;

 L9853: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L9854;
    }
  goto ret0;

 L9854: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (immediate_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9855;
    }
  goto ret0;

 L9855: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, DImode))
    {
      operands[4] = x3;
      goto L9856;
    }
  goto ret0;

 L9856: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L9857;
  goto ret0;

 L9857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9858;
    }
  goto ret0;

 L9858: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L9859;
  goto ret0;

 L9859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 16566 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 793;  /* *strlenqi_1 */
    }
  goto ret0;

 L10056: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10057;
    }
  goto ret0;

 L10057: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_nonmemory_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L10058;
    }
  goto ret0;

 L10058: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10059;
  goto ret0;

 L10059: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10060;
  goto ret0;

 L10060: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10061;
  goto ret0;

 L10061: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10062;
  goto ret0;

 L10062: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
    {
      return 814;  /* pro_epilogue_adjust_stack_di_add */
    }
  goto ret0;

 L10078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10079;
    }
  goto ret0;

 L10079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L10080;
    }
  goto ret0;

 L10080: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10081;
  goto ret0;

 L10081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10082;
  goto ret0;

 L10082: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10083;
  goto ret0;

 L10083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10084;
  goto ret0;

 L10084: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
    {
      return 816;  /* pro_epilogue_adjust_stack_di_sub */
    }
  goto ret0;

 L65297: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 58)
    goto L51778;
  goto ret0;

 L51778: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L51779;
    }
  goto ret0;

 L51779: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L51780;
    }
  goto ret0;

 L51780: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51781;
    }
  goto ret0;

 L51781: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L51782;
    }
  goto ret0;

 L51782: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_int_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L51783;
    }
  goto ret0;

 L51783: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51784;
  goto ret0;

 L51784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51785;
  goto ret0;

 L51785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51786;
  goto ret0;

 L51786: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L51787;
  goto ret0;

 L51787: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L51788;
  goto ret0;

 L51788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L51789;
  goto ret0;

 L51789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51790;
  goto ret0;

 L51790: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 405 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_CMPXCHG8B) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return 4721;  /* atomic_compare_and_swapdi_doubleword */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_168 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L65151;
    case HImode:
      goto L65152;
    case SImode:
      goto L65153;
    case SFmode:
      goto L65157;
    case DFmode:
      goto L65158;
    case XFmode:
      goto L65159;
    case CCOmode:
      goto L65160;
    case TFmode:
      goto L65163;
    default:
      break;
    }
 L7388: ATTRIBUTE_UNUSED_LABEL
  operands[0] = x2;
  goto L7389;
 L7463: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65165;
    case CCmode:
      goto L65167;
    case XFmode:
      goto L65168;
    case DImode:
      goto L65169;
    case HImode:
      goto L65174;
    case QImode:
      goto L65175;
    default:
      break;
    }
  goto ret0;

 L65151: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L842;
    }
 L65154: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1171;
    }
 L65164: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L5887;
    }
  goto L7388;

 L842: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65179;
  x2 = XEXP (x1, 0);
  goto L65154;

 L65179: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SIGN_EXTEND:
      goto L843;
    case FIX:
      goto L1106;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65154;

 L843: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L844;
    }
  x2 = XEXP (x1, 0);
  goto L65154;

 L844: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L845;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L846;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L846: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L847;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      return 129;  /* extendsidi2_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L1106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1107;
    }
  x2 = XEXP (x1, 0);
  goto L65154;

 L1107: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1108;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L1108: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1109;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L1109: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1110;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L1110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L1111;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L1111: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4619 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	&& (TARGET_64BIT || DImode != DImode))
	&& TARGET_SSE_MATH)))
    {
      return 162;  /* fix_truncdi_i387_fisttp_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65154;

 L1171: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == FIX)
    goto L1172;
  x2 = XEXP (x1, 0);
  goto L65164;

 L1172: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1173;
    }
  x2 = XEXP (x1, 0);
  goto L65164;

 L1173: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1174;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65164;

 L1174: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1175;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65164;

 L1175: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1176;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65164;

 L1176: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1177;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65164;

 L1177: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4691 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 166;  /* fix_truncdi_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65164;

 L5887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65181;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65181: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ROTATE:
      goto L5888;
    case ROTATERT:
      goto L5904;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L7388;

 L5888: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5889;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L5889: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5890;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L5890: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5891;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5891: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L5892;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5892: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L5893;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5893: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      return 488;  /* ix86_rotldi3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L5905;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L5905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L5906;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L5906: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L5907;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L5908;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5908: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L5909;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L5909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      return 489;  /* ix86_rotrdi3_doubleword */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65152: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1069;
    }
 L65155: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1207;
    }
 L65162: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L3005;
    }
  goto L7388;

 L1069: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == FIX)
    goto L1070;
  x2 = XEXP (x1, 0);
  goto L65155;

 L1070: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1071;
    }
  x2 = XEXP (x1, 0);
  goto L65155;

 L1071: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1072;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65155;

 L1072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1073;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65155;

 L1073: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1074;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65155;

 L1074: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L1075;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65155;

 L1075: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4619 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	&& (TARGET_64BIT || HImode != DImode))
	&& TARGET_SSE_MATH)))
    {
      return 160;  /* fix_trunchi_i387_fisttp_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65155;

 L1207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == FIX)
    goto L1208;
  x2 = XEXP (x1, 0);
  goto L65162;

 L1208: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1209;
    }
  x2 = XEXP (x1, 0);
  goto L65162;

 L1209: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1210;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65162;

 L1210: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1211;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65162;

 L1211: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1212;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65162;

 L1212: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1213;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65162;

 L1213: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4746 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
    {
      return 168;  /* fix_trunchi_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65162;

 L3005: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65183;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65183: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case DIV:
      goto L3006;
    case UDIV:
      goto L3177;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3006: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3007;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3007: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L3008;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3008: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3009;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3010;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MOD)
    goto L3011;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3011: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3012;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3012: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3013;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3013: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L3014;
    case USE:
      goto L3077;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH))
    {
      return 290;  /* *divmodhi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3077: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L3078;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3078: ATTRIBUTE_UNUSED_LABEL
  if (
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 292;  /* *divmodhi4_noext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3177: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3178;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3178: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L3179;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3179: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3180;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3181;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UMOD)
    goto L3182;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3182: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3183;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3183: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3184;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3184: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  switch (GET_CODE (x1))
    {
    case CLOBBER:
      goto L3185;
    case USE:
      goto L3272;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH))
    {
      return 296;  /* *udivmodhi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L3273;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3273: ATTRIBUTE_UNUSED_LABEL
  if (
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 299;  /* *udivmodhi4_noext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65153: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1087;
    }
 L65156: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1217;
    }
 L65161: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2927;
    }
  goto L7388;

 L1087: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == FIX)
    goto L1088;
  x2 = XEXP (x1, 0);
  goto L65156;

 L1088: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1089;
    }
  x2 = XEXP (x1, 0);
  goto L65156;

 L1089: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1090;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65156;

 L1090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L1091;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65156;

 L1091: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1092;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65156;

 L1092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[3] = x2;
      goto L1093;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65156;

 L1093: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4619 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	&& (TARGET_64BIT || SImode != DImode))
	&& TARGET_SSE_MATH)))
    {
      return 161;  /* fix_truncsi_i387_fisttp_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65156;

 L1217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == FIX)
    goto L1218;
  x2 = XEXP (x1, 0);
  goto L65161;

 L1218: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1219;
    }
  x2 = XEXP (x1, 0);
  goto L65161;

 L1219: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1220;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65161;

 L1220: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1221;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65161;

 L1221: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1222;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65161;

 L1222: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1223;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65161;

 L1223: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4746 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
    {
      return 169;  /* fix_truncsi_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65161;

 L2927: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65185;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65185: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case TRUNCATE:
      goto L2928;
    case DIV:
      goto L2993;
    case UDIV:
      goto L3164;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2928: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == LSHIFTRT)
    goto L2929;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2929: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == MULT)
    goto L2930;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2930: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == DImode)
    goto L65188;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65188: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case SIGN_EXTEND:
      goto L2931;
    case ZERO_EXTEND:
      goto L2956;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2931: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, SImode))
    {
      operands[1] = x6;
      goto L2932;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2932: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == DImode
      && GET_CODE (x5) == SIGN_EXTEND)
    goto L2933;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2933: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L2934;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2934: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L2935;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2935: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2936;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2936: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L2937;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2937: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L2938;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2938: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 287;  /* *smulsi3_highpart_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2956: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, SImode))
    {
      operands[1] = x6;
      goto L2957;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2957: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (GET_MODE (x5) == DImode
      && GET_CODE (x5) == ZERO_EXTEND)
    goto L2958;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2958: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (nonimmediate_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L2959;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2959: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (32)])
    goto L2960;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2960: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L2961;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2961: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L2962;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2962: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L2963;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7001 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 288;  /* *umulsi3_highpart_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2994;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2994: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L2995;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2995: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2996;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2996: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L2997;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MOD)
    goto L2998;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2998: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L2999;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2999: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3000;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3000: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L65190;
    case CLOBBER:
      goto L3038;
    case USE:
      goto L3106;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65190: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 34)
    goto L3001;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3001: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 289;  /* divmodsi4_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3038: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 291;  /* *divmodsi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3106: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L3107;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3107: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 293;  /* *divmodsi4_noext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3164: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3165;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3165: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L3166;
    }
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L3227;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L3166: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3167;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3168;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3168: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L3169;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3169: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3170;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3170: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3171;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3171: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L65191;
    case CLOBBER:
      goto L3209;
    case USE:
      goto L3301;
    default:
     break;
   }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65191: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 34)
    goto L3172;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3172: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 295;  /* udivmodsi4_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 297;  /* *udivmodsi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3301: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L3302;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3302: ATTRIBUTE_UNUSED_LABEL
  if (pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 300;  /* *udivmodsi4_noext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3227: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3228;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3229;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3229: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L3230;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3230: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3231;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3232;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3232: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L3233;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L3233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7343 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(IN_RANGE (INTVAL (operands[3]), 2, HOST_WIDE_INT_UC (0x80000000))
   && (UINTVAL (operands[3]) & (UINTVAL (operands[3]) - 1)) == 0))
    {
      return 298;  /* *udivmodsi4_pow2 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65157: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L1351;
    }
  goto L7388;

 L1351: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode)
    goto L65192;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65192: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSIGNED_FLOAT)
    goto L1352;
  if (absneg_operator (x2, SFmode))
    {
      operands[3] = x2;
      goto L4632;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L1352: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1353;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L1353: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1354;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L1355;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1355: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1356;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1357;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1357: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5092 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT
   && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
    {
      return 188;  /* *floatunssisf2_i387_with_xmm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L4633;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L4633: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4634;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode)
    goto L65194;
 L4702: ATTRIBUTE_UNUSED_LABEL
  operands[2] = x2;
  goto L4703;

 L65194: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L4635;
    }
 L65195: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L4669;
    }
  goto L4702;

 L4635: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4636;
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L65195;

 L4636: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8862 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387 && SSE_FLOAT_MODE_P (SFmode)))
    {
      return 396;  /* *absnegsf2_mixed */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L65195;

 L4669: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4670;
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L4702;

 L4670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8871 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
    {
      return 398;  /* *absnegsf2_sse */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L4702;

 L4703: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4704;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4704: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8880 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
    {
      return 400;  /* *absnegsf2_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65158: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L1361;
    }
  goto L7388;

 L1361: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode)
    goto L65196;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65196: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSIGNED_FLOAT)
    goto L1362;
  if (absneg_operator (x2, DFmode))
    {
      operands[3] = x2;
      goto L4649;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L1362: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1363;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L1363: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1364;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1364: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L1365;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1365: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1366;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1366: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1367;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1367: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5092 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT
   && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
    {
      return 189;  /* *floatunssidf2_i387_with_xmm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4649: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L4650;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L4650: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4651;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L65198;
 L4719: ATTRIBUTE_UNUSED_LABEL
  operands[2] = x2;
  goto L4720;

 L65198: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L4652;
    }
 L65199: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L4686;
    }
  goto L4719;

 L4652: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4653;
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L65199;

 L4653: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8862 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_MIX_SSE_I387 && SSE_FLOAT_MODE_P (DFmode)))
    {
      return 397;  /* *absnegdf2_mixed */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L65199;

 L4686: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4687;
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L4719;

 L4687: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8871 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
    {
      return 399;  /* *absnegdf2_sse */
    }
  x1 = XVECEXP (x0, 0, 1);
  x2 = XEXP (x1, 0);
  goto L4719;

 L4720: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4721;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8880 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
    {
      return 401;  /* *absnegdf2_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65159: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L1371;
    }
  goto L7388;

 L1371: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode)
    goto L65200;
  x2 = XEXP (x1, 0);
  goto L7388;

 L65200: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSIGNED_FLOAT)
    goto L1372;
  if (absneg_operator (x2, XFmode))
    {
      operands[3] = x2;
      goto L4734;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L1372: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L1373;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L1373: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1374;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L1375;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1375: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1376;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1377;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L1377: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5092 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT
   && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
    {
      return 190;  /* *floatunssixf2_i387_with_xmm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4734: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L4735;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L4735: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4736;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L4737;

 L4737: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4738;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4738: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8880 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH)))
    {
      return 402;  /* *absnegxf2_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65160: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L2764;
  goto L7388;

 L2764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCOmode
      && GET_CODE (x2) == EQ)
    goto L2765;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2765: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == MULT)
    goto L2766;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2766: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L2767;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2767: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L2768;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2768: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == ZERO_EXTEND)
    goto L2769;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2769: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L2770;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L2770: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L2771;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2771: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == MULT)
    goto L2772;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2772: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[1]))
    goto L2773;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2773: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (rtx_equal_p (x5, operands[2]))
    goto L2774;
  x2 = XEXP (x1, 0);
  goto L7388;

 L2774: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2775;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L2776;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2776: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L2777;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2777: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L2778;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2778: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[2]))
    goto L2779;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2779: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L2780;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2780: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L2781;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L2781: ATTRIBUTE_UNUSED_LABEL
  if (
#line 6745 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    {
      return 279;  /* *umulvsi4 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L65163: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, TFmode))
    {
      operands[0] = x2;
      goto L4750;
    }
  goto L7388;

 L4750: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, TFmode))
    {
      operands[3] = x2;
      goto L4751;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L4751: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, TFmode))
    {
      operands[1] = x3;
      goto L4752;
    }
  x2 = XEXP (x1, 0);
  goto L7388;

 L4752: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L4753;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L4754;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4754: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L4755;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L4755: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8895 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE))
    {
      return 403;  /* *absnegtf2_sse */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7388;

 L7389: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CALL)
    goto L7390;
  x2 = XEXP (x1, 0);
  goto L7463;

 L7390: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L7391;
  x2 = XEXP (x1, 0);
  goto L7463;

 L7391: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (memory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L7392;
    }
  x2 = XEXP (x1, 0);
  goto L7463;

 L7392: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[2] = x3;
  goto L7393;

 L7393: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7394;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L7394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L7395;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L7395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7396;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L7396: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L7397;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L7397: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L7398;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L7398: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 39)
    goto L7399;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L7399: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 574;  /* *sibcall_value_pop_memory */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L7463;

 L65165: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case REG:
      goto L65202;
    case MEM:
      goto L9407;
    default:
     break;
   }
 L65166: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7479;
    }
 L65172: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9307;
    }
  goto ret0;

 L65202: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 7)
    goto L7464;
  goto L65166;

 L7464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7465;
  x2 = XEXP (x1, 0);
  goto L65166;

 L7465: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 6)
    goto L7466;
  x2 = XEXP (x1, 0);
  goto L65166;

 L7466: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L7467;
  x2 = XEXP (x1, 0);
  goto L65166;

 L7467: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7468;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L7468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 6)
    goto L7469;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L7469: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MEM)
    goto L7470;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L7470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 6)
    goto L7471;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L7471: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7472;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L7472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L7473;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L7473: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    {
      return 589;  /* leave */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65166;

 L9407: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L65203;
    case DImode:
      goto L65204;
    default:
      break;
    }
  goto L65172;

 L65203: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L9408;
    }
 L65205: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L9596;
    }
  goto L65172;

 L9408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MEM)
    goto L9409;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9409: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9410;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9410: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9411;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9411: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9412;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9412: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9413;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9413: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L9414;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9414: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L9415;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9415: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9416;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9417;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9417: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9418;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9418: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9419;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9419: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)]
      && (
#line 16083 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 768;  /* *strmovsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65205;

 L9596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9597;
    }
  x2 = XEXP (x1, 0);
  goto L65172;

 L9597: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9598;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9599;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9600;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9600: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L9601;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9601: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L9602;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9602: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 38)
    goto L9603;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9603: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16273 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 778;  /* *strsetsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L65204: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L9424;
    }
 L65206: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L9608;
    }
  goto L65172;

 L9424: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MEM)
    goto L9425;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9425: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9426;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9426: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9427;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9428;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9429;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9429: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L9430;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9430: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L9431;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9431: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9432;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9432: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9433;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9434;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9434: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9435;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9435: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)]
      && (
#line 16083 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 769;  /* *strmovsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65206;

 L9608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9609;
    }
  x2 = XEXP (x1, 0);
  goto L65172;

 L9609: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9610;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9610: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9611;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9612;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9612: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L9613;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9613: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L9614;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9614: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 38)
    goto L9615;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L9615: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16273 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 779;  /* *strsetsi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65172;

 L7479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65207;
  x2 = XEXP (x1, 0);
  goto L65172;

 L65207: ATTRIBUTE_UNUSED_LABEL
  tem = recog_166 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L65172;

 L9307: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65232;
  goto ret0;

 L65232: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65236;
  goto ret0;

 L65236: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65240;
  goto ret0;

 L65240: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9308;
    case 65LL:
      goto L9318;
    case 78LL:
      goto L10187;
    case 80LL:
      goto L10223;
    default:
      break;
    }
  goto ret0;

 L9308: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9309;
    }
  goto ret0;

 L9309: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9310;
  goto ret0;

 L9310: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9311;
    }
  goto ret0;

 L9311: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9312;
  goto ret0;

 L9312: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9313;
    }
  goto ret0;

 L9313: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15749 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 755;  /* fistsi2_floor */
    }
  goto ret0;

 L9318: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9319;
    }
  goto ret0;

 L9319: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9320;
  goto ret0;

 L9320: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9321;
    }
  goto ret0;

 L9321: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9322;
  goto ret0;

 L9322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9323;
    }
  goto ret0;

 L9323: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15749 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 756;  /* fistsi2_ceil */
    }
  goto ret0;

 L10187: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10188;
    }
  goto ret0;

 L10188: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10189;
  goto ret0;

 L10189: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10190;
    }
  goto ret0;

 L10190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10191;
  goto ret0;

 L10191: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10192;
  goto ret0;

 L10192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 18219 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSP_TLS_GUARD) && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode)))
    {
      return 827;  /* stack_protect_set_si */
    }
  goto ret0;

 L10223: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10224;
    }
  goto ret0;

 L10224: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10225;
  goto ret0;

 L10225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L10226;
    }
  goto ret0;

 L10226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10227;
  goto ret0;

 L10227: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10228;
  goto ret0;

 L10228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 1148 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ptr_mode == SImode))
    {
      return 829;  /* stack_tls_protect_set_si */
    }
  goto ret0;

 L65167: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L8107;
  goto ret0;

 L8107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode)
    goto L65244;
  goto ret0;

 L65244: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65247;
  goto ret0;

 L65247: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 1:
      goto L65250;
    case 5:
      goto L65251;
    case 3:
      goto L65252;
    default:
      break;
    }
  goto ret0;

 L65250: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 27)
    goto L8108;
  goto ret0;

 L8108: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L8109;
    }
  goto ret0;

 L8109: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8110;
  goto ret0;

 L8110: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L8111;
    }
  goto ret0;

 L8111: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8112;
  goto ret0;

 L8112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L8113;
    }
  goto ret0;

 L8113: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13141 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT))
    {
      return 635;  /* paritysi2_cmp */
    }
  goto ret0;

 L65251: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 121)
    goto L39128;
  goto ret0;

 L39128: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L39129;
    }
  goto ret0;

 L39129: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39130;
    }
  goto ret0;

 L39130: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[4] = x3;
      goto L39131;
    }
  goto ret0;

 L39131: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L39132;
    }
  goto ret0;

 L39132: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[6] = x3;
      goto L39133;
    }
  goto ret0;

 L39133: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L39134;
  goto ret0;

 L39134: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V16QImode))
    {
      operands[0] = x2;
      goto L39135;
    }
  goto ret0;

 L39135: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L39136;
  goto ret0;

 L39136: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L39137;
    }
  goto ret0;

 L39137: ATTRIBUTE_UNUSED_LABEL
  if (
#line 14875 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3693;  /* sse4_2_pcmpestr_cconly */
    }
  goto ret0;

 L65252: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 122)
    goto L39218;
  goto ret0;

 L39218: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L39219;
    }
  goto ret0;

 L39219: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L39220;
    }
  goto ret0;

 L39220: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L39221;
    }
  goto ret0;

 L39221: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L39222;
  goto ret0;

 L39222: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V16QImode))
    {
      operands[0] = x2;
      goto L39223;
    }
  goto ret0;

 L39223: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L39224;
  goto ret0;

 L39224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L39225;
    }
  goto ret0;

 L39225: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15056 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2))
    {
      return 3698;  /* sse4_2_pcmpistr_cconly */
    }
  goto ret0;

 L65168: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L8618;
    }
  goto ret0;

 L8618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode)
    goto L65253;
  goto ret0;

 L65253: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65259;
  goto ret0;

 L65259: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 2:
      goto L65265;
    case 1:
      goto L65267;
    default:
      break;
    }
  goto ret0;

 L65265: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 72LL:
      goto L8619;
    case 74LL:
      goto L8635;
    default:
      break;
    }
  goto ret0;

 L8619: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8620;
    }
  goto ret0;

 L8620: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[3] = x3;
      goto L8621;
    }
  goto ret0;

 L8621: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8622;
  goto ret0;

 L8622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8623;
    }
  goto ret0;

 L8623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 73)
    goto L8624;
  goto ret0;

 L8624: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L8625;
  goto ret0;

 L8625: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L8626;
  goto ret0;

 L8626: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L8627;
  goto ret0;

 L8627: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L8628;
  goto ret0;

 L8628: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 76)
    goto L8629;
  goto ret0;

 L8629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L8630;
  goto ret0;

 L8630: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 14086 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_finite_math_only))
    {
      return 695;  /* fpremxf4_i387 */
    }
  goto ret0;

 L8635: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L8636;
    }
  goto ret0;

 L8636: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, XFmode))
    {
      operands[3] = x3;
      goto L8637;
    }
  goto ret0;

 L8637: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L8638;
  goto ret0;

 L8638: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L8639;
    }
  goto ret0;

 L8639: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 75)
    goto L8640;
  goto ret0;

 L8640: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L8641;
  goto ret0;

 L8641: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L8642;
  goto ret0;

 L8642: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L8643;
  goto ret0;

 L8643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L8644;
  goto ret0;

 L8644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 2
      && XINT (x2, 1) == 76)
    goto L8645;
  goto ret0;

 L8645: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L8646;
  goto ret0;

 L8646: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 14160 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_finite_math_only))
    {
      return 696;  /* fprem1xf4_i387 */
    }
  goto ret0;

 L65267: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 60LL:
      goto L9068;
    case 61LL:
      goto L9078;
    case 62LL:
      goto L9088;
    case 63LL:
      goto L9110;
    default:
      break;
    }
  goto ret0;

 L9068: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9069;
    }
  goto ret0;

 L9069: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9070;
  goto ret0;

 L9070: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9071;
    }
  goto ret0;

 L9071: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9072;
  goto ret0;

 L9072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9073;
    }
  goto ret0;

 L9073: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15509 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 738;  /* frndintxf2_floor_i387 */
    }
  goto ret0;

 L9078: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9079;
    }
  goto ret0;

 L9079: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9080;
  goto ret0;

 L9080: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9081;
    }
  goto ret0;

 L9081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9082;
  goto ret0;

 L9082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9083;
    }
  goto ret0;

 L9083: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15509 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 739;  /* frndintxf2_ceil_i387 */
    }
  goto ret0;

 L9088: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9089;
    }
  goto ret0;

 L9089: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9090;
  goto ret0;

 L9090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9091;
    }
  goto ret0;

 L9091: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9092;
  goto ret0;

 L9092: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9093;
    }
  goto ret0;

 L9093: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15509 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 740;  /* frndintxf2_trunc_i387 */
    }
  goto ret0;

 L9110: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9111;
    }
  goto ret0;

 L9111: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9112;
  goto ret0;

 L9112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9113;
    }
  goto ret0;

 L9113: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9114;
  goto ret0;

 L9114: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9115;
    }
  goto ret0;

 L9115: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15617 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 742;  /* frndintxf2_mask_pm_i387 */
    }
  goto ret0;

 L65169: ATTRIBUTE_UNUSED_LABEL
  return recog_167 (x0, insn, pnum_clobbers);

 L65174: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MEM)
    goto L9439;
 L65171: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L9287;
    }
 L65178: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L51810;
    }
  goto ret0;

 L9439: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L65298;
    case DImode:
      goto L65299;
    default:
      break;
    }
  goto L65171;

 L65298: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L9440;
    }
 L65300: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L9620;
    }
  goto L65171;

 L9440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MEM)
    goto L9441;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9441: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9442;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9442: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9443;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9443: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9444;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9444: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9445;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9445: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L9446;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9446: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9447;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9447: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9448;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9449;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9449: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9450;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9451;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && (
#line 16098 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 770;  /* *strmovhi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65300;

 L9620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9621;
    }
  x2 = XEXP (x1, 0);
  goto L65171;

 L9621: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9622;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9622: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9623;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9624;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9624: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L9625;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9625: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9626;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9626: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 38)
    goto L9627;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9627: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16286 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 780;  /* *strsethi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L65299: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L9456;
    }
 L65301: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L9632;
    }
  goto L65171;

 L9456: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MEM)
    goto L9457;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9458;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9458: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9459;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9460;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9460: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9461;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9461: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L9462;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9462: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9463;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9463: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9464;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9465;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9465: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9466;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9466: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9467;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9467: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && (
#line 16098 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 771;  /* *strmovhi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65301;

 L9632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9633;
    }
  x2 = XEXP (x1, 0);
  goto L65171;

 L9633: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9634;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9635;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9636;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9636: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L9637;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9637: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9638;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9638: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 38)
    goto L9639;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9639: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16286 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 781;  /* *strsethi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65171;

 L9287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65302;
  x2 = XEXP (x1, 0);
  goto L65178;

 L65302: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65304;
  x2 = XEXP (x1, 0);
  goto L65178;

 L65304: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65306;
  x2 = XEXP (x1, 0);
  goto L65178;

 L65306: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9288;
    case 65LL:
      goto L9298;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65178;

 L9288: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9289;
    }
  x2 = XEXP (x1, 0);
  goto L65178;

 L9289: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9290;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9290: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9291;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9291: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9292;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9293;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9293: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15749 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 753;  /* fisthi2_floor */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9298: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9299;
    }
  x2 = XEXP (x1, 0);
  goto L65178;

 L9299: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9300;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9301;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9301: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9302;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9302: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9303;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L9303: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15749 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 754;  /* fisthi2_ceil */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65178;

 L51810: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65308;
  goto ret0;

 L65308: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC_VOLATILE)
    goto L65310;
  goto ret0;

 L65310: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65312;
    case 2:
      goto L65313;
    default:
      break;
    }
  goto ret0;

 L65312: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 58)
    goto L51811;
  goto ret0;

 L51811: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L51812;
    }
  goto ret0;

 L51812: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L51813;
    }
  goto ret0;

 L51813: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (register_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L51814;
    }
  goto ret0;

 L51814: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_int_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L51815;
    }
  goto ret0;

 L51815: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51816;
  goto ret0;

 L51816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51817;
  goto ret0;

 L51817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51818;
  goto ret0;

 L51818: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L51819;
  goto ret0;

 L51819: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L51820;
  goto ret0;

 L51820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L51821;
  goto ret0;

 L51821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51822;
  goto ret0;

 L51822: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 420 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_CMPXCHG))
    {
      return 4723;  /* atomic_compare_and_swaphi_1 */
    }
  goto ret0;

 L65313: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 59)
    goto L51868;
  goto ret0;

 L51868: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L51869;
    }
  goto ret0;

 L51869: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51870;
    }
  goto ret0;

 L51870: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51871;
  goto ret0;

 L51871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51872;
  goto ret0;

 L51872: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == PLUS)
    goto L51873;
  goto ret0;

 L51873: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L51874;
  goto ret0;

 L51874: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L51875;
    }
  goto ret0;

 L51875: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L51876;
  goto ret0;

 L51876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 436 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_XADD))
    {
      return 4726;  /* atomic_fetch_addhi */
    }
  goto ret0;

 L65175: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == MEM)
    goto L9471;
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L51794;
    }
  goto ret0;

 L9471: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SImode:
      goto L65314;
    case DImode:
      goto L65315;
    default:
      break;
    }
  goto ret0;

 L65314: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L9472;
    }
 L65316: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L9644;
    }
  goto ret0;

 L9472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L9473;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9473: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9474;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9474: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9475;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9476;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9477;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9477: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L9478;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9478: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L9479;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9479: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9480;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9481;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9482;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9482: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9483;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9483: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 16113 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 772;  /* *strmovqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65316;

 L9644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L9645;
    }
  goto ret0;

 L9645: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9646;
  goto ret0;

 L9646: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9647;
    }
  goto ret0;

 L9647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9648;
  goto ret0;

 L9648: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L9649;
  goto ret0;

 L9649: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L9650;
  goto ret0;

 L9650: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 38)
    goto L9651;
  goto ret0;

 L9651: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16299 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 782;  /* *strsetqi_1 */
    }
  goto ret0;

 L65315: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L9488;
    }
 L65317: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L9656;
    }
  goto ret0;

 L9488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L9489;
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9489: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9490;
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9490: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9491;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9491: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9492;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9492: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9493;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9493: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L9494;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L9495;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9495: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9496;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9497;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9497: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9498;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9498: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9499;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9499: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && (
#line 16113 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 773;  /* *strmovqi_1 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L65317;

 L9656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L9657;
    }
  goto ret0;

 L9657: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9658;
  goto ret0;

 L9658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9659;
    }
  goto ret0;

 L9659: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9660;
  goto ret0;

 L9660: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L9661;
  goto ret0;

 L9661: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L9662;
  goto ret0;

 L9662: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 38)
    goto L9663;
  goto ret0;

 L9663: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 16299 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 783;  /* *strsetqi_1 */
    }
  goto ret0;

 L51794: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L65318;
  goto ret0;

 L65318: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC_VOLATILE)
    goto L65320;
  goto ret0;

 L65320: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65322;
    case 2:
      goto L65323;
    default:
      break;
    }
  goto ret0;

 L65322: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 58)
    goto L51795;
  goto ret0;

 L51795: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L51796;
    }
  goto ret0;

 L51796: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L51797;
    }
  goto ret0;

 L51797: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (register_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L51798;
    }
  goto ret0;

 L51798: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (const_int_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L51799;
    }
  goto ret0;

 L51799: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51800;
  goto ret0;

 L51800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51801;
  goto ret0;

 L51801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51802;
  goto ret0;

 L51802: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L51803;
  goto ret0;

 L51803: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L51804;
  goto ret0;

 L51804: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L51805;
  goto ret0;

 L51805: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 58)
    goto L51806;
  goto ret0;

 L51806: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 420 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_CMPXCHG))
    {
      return 4722;  /* atomic_compare_and_swapqi_1 */
    }
  goto ret0;

 L65323: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 59)
    goto L51843;
  goto ret0;

 L51843: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L51844;
    }
  goto ret0;

 L51844: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L51845;
    }
  goto ret0;

 L51845: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L51846;
  goto ret0;

 L51846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L51847;
  goto ret0;

 L51847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L51848;
  goto ret0;

 L51848: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L51849;
  goto ret0;

 L51849: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L51850;
    }
  goto ret0;

 L51850: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L51851;
  goto ret0;

 L51851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 436 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(TARGET_XADD))
    {
      return 4725;  /* atomic_fetch_addqi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_169 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case UNSIGNED_FIX:
      goto L966;
    case DIV:
      goto L2978;
    case UDIV:
      goto L3149;
    case UNSPEC:
      goto L65342;
    case PLUS:
      goto L8176;
    case UNSPEC_VOLATILE:
      goto L65344;
    default:
     break;
   }
  goto ret0;

 L966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L65345;
    case DFmode:
      goto L65346;
    default:
      break;
    }
  goto ret0;

 L65345: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L967;
    }
  goto ret0;

 L967: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L968;
  goto ret0;

 L968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L969;
    }
  goto ret0;

 L969: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L970;
  goto ret0;

 L970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L971;
    }
  goto ret0;

 L971: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L972;
  goto ret0;

 L972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L973;
    }
  goto ret0;

 L973: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   && optimize_function_for_speed_p (cfun)))
    {
      return 150;  /* *fixuns_truncsf_1 */
    }
  goto ret0;

 L65346: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L987;
    }
  goto ret0;

 L987: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L988;
  goto ret0;

 L988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L989;
    }
  goto ret0;

 L989: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L990;
  goto ret0;

 L990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L991;
    }
  goto ret0;

 L991: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L992;
  goto ret0;

 L992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L993;
    }
  goto ret0;

 L993: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   && optimize_function_for_speed_p (cfun)))
    {
      return 151;  /* *fixuns_truncdf_1 */
    }
  goto ret0;

 L2978: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L2979;
    }
  goto ret0;

 L2979: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L2980;
    }
  goto ret0;

 L2980: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L2981;
  goto ret0;

 L2981: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L2982;
    }
  goto ret0;

 L2982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MOD)
    goto L2983;
  goto ret0;

 L2983: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L2984;
  goto ret0;

 L2984: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L2985;
  goto ret0;

 L2985: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L65347;
    case USE:
      goto L3091;
    default:
     break;
   }
  goto ret0;

 L65347: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 34)
    goto L2986;
  goto ret0;

 L2986: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L2987;
  goto ret0;

 L2987: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L2988;
  goto ret0;

 L2988: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 289;  /* divmodsi4_1 */
    }
  goto ret0;

 L3091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L3092;
    }
  goto ret0;

 L3092: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L3093;
  goto ret0;

 L3093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 293;  /* *divmodsi4_noext */
    }
  goto ret0;

 L3149: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L3150;
    }
  goto ret0;

 L3150: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L3151;
    }
  goto ret0;

 L3151: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3152;
  goto ret0;

 L3152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L3153;
    }
  goto ret0;

 L3153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L3154;
  goto ret0;

 L3154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3155;
  goto ret0;

 L3155: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3156;
  goto ret0;

 L3156: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L65348;
    case USE:
      goto L3286;
    default:
     break;
   }
  goto ret0;

 L65348: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 34)
    goto L3157;
  goto ret0;

 L3157: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L3158;
  goto ret0;

 L3158: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L3159;
  goto ret0;

 L3159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 295;  /* udivmodsi4_1 */
    }
  goto ret0;

 L3286: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L3287;
    }
  goto ret0;

 L3287: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L3288;
  goto ret0;

 L3288: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 300;  /* *udivmodsi4_noext */
    }
  goto ret0;

 L65342: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 4:
      goto L65349;
    case 3:
      goto L65350;
    default:
      break;
    }
  goto ret0;

 L65349: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 20)
    goto L8136;
  goto ret0;

 L8136: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8137;
    }
  goto ret0;

 L8137: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (tls_symbolic_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L8138;
    }
  goto ret0;

 L8138: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (constant_call_address_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L8139;
    }
  goto ret0;

 L8139: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L8140;
  goto ret0;

 L8140: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8141;
  goto ret0;

 L8141: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L8142;
    }
  goto ret0;

 L8142: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8143;
  goto ret0;

 L8143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L8144;
    }
  goto ret0;

 L8144: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L8145;
  goto ret0;

 L8145: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 13186 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU_TLS))
    {
      return 637;  /* *tls_global_dynamic_32_gnu */
    }
  goto ret0;

 L65350: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 21)
    goto L8157;
  goto ret0;

 L8157: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L8158;
    }
  goto ret0;

 L8158: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (constant_call_address_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L8159;
    }
  goto ret0;

 L8159: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L8160;
  goto ret0;

 L8160: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8161;
  goto ret0;

 L8161: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L8162;
    }
  goto ret0;

 L8162: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8163;
  goto ret0;

 L8163: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L8164;
    }
  goto ret0;

 L8164: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L8165;
  goto ret0;

 L8165: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 13281 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_GNU_TLS))
    {
      return 638;  /* *tls_local_dynamic_base_32_gnu */
    }
  goto ret0;

 L8176: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 21)
    goto L8177;
  goto ret0;

 L8177: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L8178;
    }
  goto ret0;

 L8178: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (constant_call_address_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L8179;
    }
  goto ret0;

 L8179: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L8180;
  goto ret0;

 L8180: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == CONST)
    goto L8181;
  goto ret0;

 L8181: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 6)
    goto L8182;
  goto ret0;

 L8182: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (tls_symbolic_operand (x5, VOIDmode))
    {
      operands[3] = x5;
      goto L8183;
    }
  goto ret0;

 L8183: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8184;
  goto ret0;

 L8184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L8185;
    }
  goto ret0;

 L8185: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8186;
  goto ret0;

 L8186: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L8187;
    }
  goto ret0;

 L8187: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L8188;
  goto ret0;

 L8188: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return 639;  /* *tls_local_dynamic_32_once */
    }
  goto ret0;

 L65344: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 2)
    goto L10113;
  goto ret0;

 L10113: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L10114;
    }
  goto ret0;

 L10114: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10115;
  goto ret0;

 L10115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L10116;
  goto ret0;

 L10116: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MINUS)
    goto L10117;
  goto ret0;

 L10117: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L10118;
  goto ret0;

 L10118: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L10119;
    }
  goto ret0;

 L10119: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10120;
  goto ret0;

 L10120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10121;
  goto ret0;

 L10121: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L10122;
  goto ret0;

 L10122: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10123;
  goto ret0;

 L10123: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))
    {
      return 819;  /* adjust_stack_and_probesi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_170 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65384;
    case DFmode:
      goto L65385;
    case XFmode:
      goto L65386;
    default:
      break;
    }
  goto ret0;

 L65384: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L6612;
    }
  goto ret0;

 L6612: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L6613;
    }
  if (const0_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L6401;
    }
  goto ret0;

 L6613: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6614;
    case PC:
      goto L6666;
    default:
     break;
   }
  goto ret0;

 L6614: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6615;

 L6615: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6616;
  goto ret0;

 L6616: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6617;
  goto ret0;

 L6617: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6618;
  goto ret0;

 L6618: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6619;
  goto ret0;

 L6619: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6620;
  goto ret0;

 L6620: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6621;
  goto ret0;

 L6621: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6622;
    }
  goto ret0;

 L6622: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 529;  /* *jccsf_i387 */
    }
  goto ret0;

 L6666: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6667;
  goto ret0;

 L6667: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6668;

 L6668: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6669;
  goto ret0;

 L6669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6670;
  goto ret0;

 L6670: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6671;
  goto ret0;

 L6671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6672;
  goto ret0;

 L6672: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6673;
  goto ret0;

 L6673: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6674;
    }
  goto ret0;

 L6674: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11358 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 531;  /* *jccsf_r_i387 */
    }
  goto ret0;

 L6401: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6402;
    case PC:
      goto L6480;
    default:
     break;
   }
  goto ret0;

 L6402: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6403;

 L6403: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6404;
  goto ret0;

 L6404: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6405;
  goto ret0;

 L6405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6406;
  goto ret0;

 L6406: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6407;
  goto ret0;

 L6407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6408;
  goto ret0;

 L6408: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6409;
  goto ret0;

 L6409: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6410;
    }
  goto ret0;

 L6410: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 521;  /* *jccsf_0_i387 */
    }
  goto ret0;

 L6480: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6481;
  goto ret0;

 L6481: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6482;

 L6482: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6483;
  goto ret0;

 L6483: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6484;
  goto ret0;

 L6484: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6485;
  goto ret0;

 L6485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6486;
  goto ret0;

 L6486: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6487;
  goto ret0;

 L6487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6488;
    }
  goto ret0;

 L6488: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11306 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 524;  /* *jccsf_0_r_i387 */
    }
  goto ret0;

 L65385: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L6638;
    }
  goto ret0;

 L6638: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L6639;
    }
  if (const0_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L6427;
    }
  goto ret0;

 L6639: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6640;
    case PC:
      goto L6693;
    default:
     break;
   }
  goto ret0;

 L6640: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6641;

 L6641: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6642;
  goto ret0;

 L6642: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6643;
  goto ret0;

 L6643: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6644;
  goto ret0;

 L6644: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6645;
  goto ret0;

 L6645: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6646;
  goto ret0;

 L6646: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6647;
  goto ret0;

 L6647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6648;
    }
  goto ret0;

 L6648: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11345 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 530;  /* *jccdf_i387 */
    }
  goto ret0;

 L6693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6694;
  goto ret0;

 L6694: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6695;

 L6695: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6696;
  goto ret0;

 L6696: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6697;
  goto ret0;

 L6697: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6698;
  goto ret0;

 L6698: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6699;
  goto ret0;

 L6699: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6700;
  goto ret0;

 L6700: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6701;
    }
  goto ret0;

 L6701: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11358 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 532;  /* *jccdf_r_i387 */
    }
  goto ret0;

 L6427: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6428;
    case PC:
      goto L6507;
    default:
     break;
   }
  goto ret0;

 L6428: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6429;

 L6429: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6430;
  goto ret0;

 L6430: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6431;
  goto ret0;

 L6431: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6432;
  goto ret0;

 L6432: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6433;
  goto ret0;

 L6433: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6434;
  goto ret0;

 L6434: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6435;
  goto ret0;

 L6435: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6436;
    }
  goto ret0;

 L6436: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 522;  /* *jccdf_0_i387 */
    }
  goto ret0;

 L6507: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6508;
  goto ret0;

 L6508: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6509;

 L6509: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6510;
  goto ret0;

 L6510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6511;
  goto ret0;

 L6511: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6512;
  goto ret0;

 L6512: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6513;
  goto ret0;

 L6513: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6514;
  goto ret0;

 L6514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6515;
    }
  goto ret0;

 L6515: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11306 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 525;  /* *jccdf_0_r_i387 */
    }
  goto ret0;

 L65386: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, XFmode))
    {
      operands[1] = x4;
      goto L6559;
    }
  goto ret0;

 L6559: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, XFmode))
    {
      operands[2] = x4;
      goto L6560;
    }
  if (const0_operand (x4, XFmode))
    {
      operands[2] = x4;
      goto L6453;
    }
  goto ret0;

 L6560: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6561;
    case PC:
      goto L6587;
    default:
     break;
   }
  goto ret0;

 L6561: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6562;

 L6562: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6563;
  goto ret0;

 L6563: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6564;
  goto ret0;

 L6564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6565;
  goto ret0;

 L6565: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6566;
  goto ret0;

 L6566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6567;
  goto ret0;

 L6567: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6568;
  goto ret0;

 L6568: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6569;
    }
  goto ret0;

 L6569: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11319 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 527;  /* *jccxf_i387 */
    }
  goto ret0;

 L6587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6588;
  goto ret0;

 L6588: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6589;

 L6589: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6590;
  goto ret0;

 L6590: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6591;
  goto ret0;

 L6591: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6592;
  goto ret0;

 L6592: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6593;
  goto ret0;

 L6593: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6594;
  goto ret0;

 L6594: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6595;
    }
  goto ret0;

 L6595: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11332 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 528;  /* *jccxf_r_i387 */
    }
  goto ret0;

 L6453: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6454;
    case PC:
      goto L6534;
    default:
     break;
   }
  goto ret0;

 L6454: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6455;

 L6455: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6456;
  goto ret0;

 L6456: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6457;
  goto ret0;

 L6457: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6458;
  goto ret0;

 L6458: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6459;
  goto ret0;

 L6459: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6460;
  goto ret0;

 L6460: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6461;
  goto ret0;

 L6461: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6462;
    }
  goto ret0;

 L6462: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11293 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 523;  /* *jccxf_0_i387 */
    }
  goto ret0;

 L6534: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6535;
  goto ret0;

 L6535: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6536;

 L6536: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6537;
  goto ret0;

 L6537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6538;
  goto ret0;

 L6538: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6539;
  goto ret0;

 L6539: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6540;
  goto ret0;

 L6540: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6541;
  goto ret0;

 L6541: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6542;
    }
  goto ret0;

 L6542: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11306 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 526;  /* *jccxf_0_r_i387 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_171 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65387;
    case DFmode:
      goto L65388;
    case XFmode:
      goto L65389;
    default:
      break;
    }
  goto ret0;

 L65387: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x4, SFmode))
    {
      operands[1] = x4;
      goto L6877;
    }
  goto ret0;

 L6877: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case HImode:
      goto L65390;
    case SImode:
      goto L65391;
    default:
      break;
    }
  goto ret0;

 L65390: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L6878;
    }
  goto ret0;

 L6878: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SFmode))
    {
      operands[3] = x4;
      goto L6879;
    }
  goto ret0;

 L6879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6880;
    case PC:
      goto L7048;
    default:
     break;
   }
  goto ret0;

 L6880: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6881;

 L6881: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6882;
  goto ret0;

 L6882: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6883;
  goto ret0;

 L6883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6884;
  goto ret0;

 L6884: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6885;
  goto ret0;

 L6885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6886;
  goto ret0;

 L6886: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6887;
  goto ret0;

 L6887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L6888;
    }
  goto ret0;

 L6888: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 539;  /* *jccsf_hi_i387 */
    }
  goto ret0;

 L7048: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L7049;
  goto ret0;

 L7049: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7050;

 L7050: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7051;
  goto ret0;

 L7051: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7052;
  goto ret0;

 L7052: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7053;
  goto ret0;

 L7053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7054;
  goto ret0;

 L7054: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7055;
  goto ret0;

 L7055: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7056;
    }
  goto ret0;

 L7056: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 545;  /* *jccsf_hi_r_i387 */
    }
  goto ret0;

 L65391: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L6962;
    }
  goto ret0;

 L6962: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SFmode))
    {
      operands[3] = x4;
      goto L6963;
    }
  goto ret0;

 L6963: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6964;
    case PC:
      goto L7135;
    default:
     break;
   }
  goto ret0;

 L6964: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6965;

 L6965: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6966;
  goto ret0;

 L6966: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6967;
  goto ret0;

 L6967: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6968;
  goto ret0;

 L6968: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6969;
  goto ret0;

 L6969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6970;
  goto ret0;

 L6970: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6971;
  goto ret0;

 L6971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L6972;
    }
  goto ret0;

 L6972: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 542;  /* *jccsf_si_i387 */
    }
  goto ret0;

 L7135: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L7136;
  goto ret0;

 L7136: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7137;

 L7137: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7138;
  goto ret0;

 L7138: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7139;
  goto ret0;

 L7139: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7140;
  goto ret0;

 L7140: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7141;
  goto ret0;

 L7141: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7142;
  goto ret0;

 L7142: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7143;
    }
  goto ret0;

 L7143: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 548;  /* *jccsf_si_r_i387 */
    }
  goto ret0;

 L65388: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x4, DFmode))
    {
      operands[1] = x4;
      goto L6905;
    }
  goto ret0;

 L6905: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case HImode:
      goto L65392;
    case SImode:
      goto L65393;
    default:
      break;
    }
  goto ret0;

 L65392: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L6906;
    }
  goto ret0;

 L6906: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, DFmode))
    {
      operands[3] = x4;
      goto L6907;
    }
  goto ret0;

 L6907: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6908;
    case PC:
      goto L7077;
    default:
     break;
   }
  goto ret0;

 L6908: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6909;

 L6909: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6910;
  goto ret0;

 L6910: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6911;
  goto ret0;

 L6911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6912;
  goto ret0;

 L6912: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6913;
  goto ret0;

 L6913: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6914;
  goto ret0;

 L6914: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6915;
  goto ret0;

 L6915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L6916;
    }
  goto ret0;

 L6916: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 540;  /* *jccdf_hi_i387 */
    }
  goto ret0;

 L7077: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L7078;
  goto ret0;

 L7078: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7079;

 L7079: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7080;
  goto ret0;

 L7080: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7081;
  goto ret0;

 L7081: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7082;
  goto ret0;

 L7082: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7083;
  goto ret0;

 L7083: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7084;
  goto ret0;

 L7084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7085;
    }
  goto ret0;

 L7085: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 546;  /* *jccdf_hi_r_i387 */
    }
  goto ret0;

 L65393: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L6990;
    }
  goto ret0;

 L6990: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, DFmode))
    {
      operands[3] = x4;
      goto L6991;
    }
  goto ret0;

 L6991: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6992;
    case PC:
      goto L7164;
    default:
     break;
   }
  goto ret0;

 L6992: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6993;

 L6993: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6994;
  goto ret0;

 L6994: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6995;
  goto ret0;

 L6995: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6996;
  goto ret0;

 L6996: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6997;
  goto ret0;

 L6997: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6998;
  goto ret0;

 L6998: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6999;
  goto ret0;

 L6999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7000;
    }
  goto ret0;

 L7000: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 543;  /* *jccdf_si_i387 */
    }
  goto ret0;

 L7164: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L7165;
  goto ret0;

 L7165: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7166;

 L7166: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7167;
  goto ret0;

 L7167: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7168;
  goto ret0;

 L7168: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7169;
  goto ret0;

 L7169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7170;
  goto ret0;

 L7170: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7171;
  goto ret0;

 L7171: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7172;
    }
  goto ret0;

 L7172: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 549;  /* *jccdf_si_r_i387 */
    }
  goto ret0;

 L65389: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x4, XFmode))
    {
      operands[1] = x4;
      goto L6933;
    }
  goto ret0;

 L6933: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case HImode:
      goto L65394;
    case SImode:
      goto L65395;
    default:
      break;
    }
  goto ret0;

 L65394: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L6934;
    }
  goto ret0;

 L6934: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, XFmode))
    {
      operands[3] = x4;
      goto L6935;
    }
  goto ret0;

 L6935: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6936;
    case PC:
      goto L7106;
    default:
     break;
   }
  goto ret0;

 L6936: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L6937;

 L6937: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6938;
  goto ret0;

 L6938: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6939;
  goto ret0;

 L6939: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6940;
  goto ret0;

 L6940: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6941;
  goto ret0;

 L6941: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6942;
  goto ret0;

 L6942: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6943;
  goto ret0;

 L6943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L6944;
    }
  goto ret0;

 L6944: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 541;  /* *jccxf_hi_i387 */
    }
  goto ret0;

 L7106: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L7107;
  goto ret0;

 L7107: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7108;

 L7108: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7109;
  goto ret0;

 L7109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7110;
  goto ret0;

 L7110: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7111;
  goto ret0;

 L7111: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7112;
  goto ret0;

 L7112: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7113;
  goto ret0;

 L7113: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7114;
    }
  goto ret0;

 L7114: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 547;  /* *jccxf_hi_r_i387 */
    }
  goto ret0;

 L65395: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L7018;
    }
  goto ret0;

 L7018: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, XFmode))
    {
      operands[3] = x4;
      goto L7019;
    }
  goto ret0;

 L7019: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L7020;
    case PC:
      goto L7193;
    default:
     break;
   }
  goto ret0;

 L7020: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7021;

 L7021: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L7022;
  goto ret0;

 L7022: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7023;
  goto ret0;

 L7023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7024;
  goto ret0;

 L7024: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7025;
  goto ret0;

 L7025: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7026;
  goto ret0;

 L7026: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7027;
  goto ret0;

 L7027: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7028;
    }
  goto ret0;

 L7028: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11441 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 544;  /* *jccxf_si_i387 */
    }
  goto ret0;

 L7193: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L7194;
  goto ret0;

 L7194: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L7195;

 L7195: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L7196;
  goto ret0;

 L7196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L7197;
  goto ret0;

 L7197: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L7198;
  goto ret0;

 L7198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L7199;
  goto ret0;

 L7199: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L7200;
  goto ret0;

 L7200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L7201;
    }
  goto ret0;

 L7201: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))))
    {
      return 550;  /* *jccxf_si_r_i387 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_172 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65324;
    case DImode:
      goto L65325;
    case HImode:
      goto L65327;
    case SFmode:
      goto L65329;
    case DFmode:
      goto L65330;
    case XFmode:
      goto L65331;
    case CCmode:
      goto L65333;
    default:
      break;
    }
 L6396: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L6397;
  goto ret0;

 L65324: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L965;
    }
 L65328: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L1239;
    }
  goto L6396;

 L965: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65335;
  x2 = XEXP (x1, 0);
  goto L65328;

 L65335: ATTRIBUTE_UNUSED_LABEL
  tem = recog_169 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L65328;

 L1239: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65351;
  x2 = XEXP (x1, 0);
  goto L6396;

 L65351: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L1240;
    case UNSPEC:
      goto L65354;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6396;

 L1240: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1241;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L1241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1242;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1243;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1243: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1244;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1245;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1245: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1246;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1246: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L1247;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1247: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4760 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
    {
      return 171;  /* fix_truncsi_i387_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65354: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65356;
  x2 = XEXP (x1, 0);
  goto L6396;

 L65356: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9352;
    case 65LL:
      goto L9364;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L9352: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9353;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L9353: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9354;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9354: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9355;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9355: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9356;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9356: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9357;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9358;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L9359;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9359: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15763 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 759;  /* fistsi2_floor_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9364: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9365;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L9365: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9366;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9366: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9367;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9367: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9368;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9369;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9369: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9370;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L9371;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L9371: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15763 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 760;  /* fistsi2_ceil_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65325: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1159;
    }
 L65326: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1195;
    }
 L65334: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L10127;
    }
  goto L6396;

 L1159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65358;
  x2 = XEXP (x1, 0);
  goto L65326;

 L65358: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L1160;
    case UNSPEC:
      goto L65361;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65326;

 L1160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1161;
    }
  x2 = XEXP (x1, 0);
  goto L65326;

 L1161: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1162;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1163;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1163: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1164;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1164: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1165;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1165: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1166;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1166: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[4] = x2;
      goto L1167;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1167: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4691 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1])))))
    {
      return 166;  /* fix_truncdi_i387 */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L65361: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65363;
  x2 = XEXP (x1, 0);
  goto L65326;

 L65363: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9192;
    case 65LL:
      goto L9214;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65326;

 L9192: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9193;
    }
  x2 = XEXP (x1, 0);
  goto L65326;

 L9193: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9194;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9194: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9195;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9195: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9196;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9196: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9197;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9197: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9198;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[4] = x2;
      goto L9199;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9199: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15690 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 749;  /* fistdi2_floor */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9214: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9215;
    }
  x2 = XEXP (x1, 0);
  goto L65326;

 L9215: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9216;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9216: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9217;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9217: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9218;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9219;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9219: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9220;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9220: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[4] = x2;
      goto L9221;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L9221: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15690 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 750;  /* fistdi2_ceil */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65326;

 L1195: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65365;
  x2 = XEXP (x1, 0);
  goto L65334;

 L65365: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L1196;
    case UNSPEC:
      goto L65368;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65334;

 L1196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1197;
    }
  x2 = XEXP (x1, 0);
  goto L65334;

 L1197: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1198;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L1198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1199;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L1199: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1200;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L1200: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1201;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L1201: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1202;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L1202: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L1203;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L1203: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4706 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 167;  /* fix_truncdi_i387_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L65368: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65370;
  x2 = XEXP (x1, 0);
  goto L65334;

 L65370: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9250;
    case 65LL:
      goto L9276;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65334;

 L9250: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9251;
    }
  x2 = XEXP (x1, 0);
  goto L65334;

 L9251: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9252;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9252: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9253;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9253: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9254;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9255;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9255: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9256;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L9257;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9257: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 751;  /* fistdi2_floor_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9276: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9277;
    }
  x2 = XEXP (x1, 0);
  goto L65334;

 L9277: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9278;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9279;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9279: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9280;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9280: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9281;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9281: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9282;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9282: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L9283;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L9283: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 1;
      return 752;  /* fistdi2_ceil_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65334;

 L10127: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 2)
    goto L10128;
  x2 = XEXP (x1, 0);
  goto L6396;

 L10128: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L10129;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L10129: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L10130;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10130: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L10131;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10131: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MINUS)
    goto L10132;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10132: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L10133;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10133: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L10134;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10134: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10135;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10135: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L10136;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10136: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L10137;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10137: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L10138;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L10138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH
      && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))
    {
      return 820;  /* adjust_stack_and_probedi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65327: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L1227;
    }
 L65332: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L3053;
    }
  goto L6396;

 L1227: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65372;
  x2 = XEXP (x1, 0);
  goto L65332;

 L65372: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L1228;
    case UNSPEC:
      goto L65375;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65332;

 L1228: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1229;
    }
  x2 = XEXP (x1, 0);
  goto L65332;

 L1229: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1230;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L1230: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1231;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L1231: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1232;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L1232: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1233;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L1233: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1234;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L1234: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L1235;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L1235: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4760 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !SSE_FLOAT_MODE_P (GET_MODE (operands[1]))))
    {
      return 170;  /* fix_trunchi_i387_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L65375: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65377;
  x2 = XEXP (x1, 0);
  goto L65332;

 L65377: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9328;
    case 65LL:
      goto L9340;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65332;

 L9328: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9329;
    }
  x2 = XEXP (x1, 0);
  goto L65332;

 L9329: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9330;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9331;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9331: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9332;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9332: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9333;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9333: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9334;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9334: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L9335;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9335: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15763 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 757;  /* fisthi2_floor_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9340: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9341;
    }
  x2 = XEXP (x1, 0);
  goto L65332;

 L9341: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9342;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9343;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9343: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9344;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9345;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9345: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9346;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L9347;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L9347: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15763 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 758;  /* fisthi2_ceil_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65332;

 L3053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65379;
  x2 = XEXP (x1, 0);
  goto L6396;

 L65379: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case DIV:
      goto L3054;
    case UDIV:
      goto L3249;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L6396;

 L3054: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3055;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L3055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L3056;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L3056: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3057;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3058;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3058: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MOD)
    goto L3059;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3059: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3060;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3060: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3061;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3061: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L3062;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L3063;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3063: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L3064;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3064: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH))
    {
      return 292;  /* *divmodhi4_noext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3249: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L3250;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L3250: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L3251;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L3251: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L3252;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3252: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L3253;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3253: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UMOD)
    goto L3254;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3254: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L3255;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3255: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L3256;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3256: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L3257;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L3258;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3258: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L3259;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L3259: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH))
    {
      return 299;  /* *udivmodhi4_noext */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65329: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L1315;
    }
  goto L6396;

 L1315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == FLOAT)
    goto L1316;
  x2 = XEXP (x1, 0);
  goto L6396;

 L1316: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L1317;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L1317: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1318;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1318: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L1319;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1319: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1320;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1320: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L1321;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1321: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1322;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1323;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1323: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5024 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)))
    {
      return 185;  /* floatdisf2_i387_with_xmm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65330: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L1327;
    }
  goto L6396;

 L1327: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == FLOAT)
    goto L1328;
  x2 = XEXP (x1, 0);
  goto L6396;

 L1328: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L1329;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L1329: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1330;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1330: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L1331;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1331: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1332;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1332: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L1333;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1333: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1334;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1334: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1335;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1335: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5024 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)))
    {
      return 186;  /* floatdidf2_i387_with_xmm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65331: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L1339;
    }
  goto L6396;

 L1339: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == FLOAT)
    goto L1340;
  x2 = XEXP (x1, 0);
  goto L6396;

 L1340: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L1341;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L1341: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L1342;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L1343;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1343: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L1344;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L1345;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1345: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1346;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L1347;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L1347: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5024 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)))
    {
      return 187;  /* floatdixf2_i387_with_xmm */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L65333: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L8090;
  goto L6396;

 L8090: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 27)
    goto L8091;
  x2 = XEXP (x1, 0);
  goto L6396;

 L8091: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L8092;
    }
  x2 = XEXP (x1, 0);
  goto L6396;

 L8092: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L8093;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L8093: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L8094;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L8094: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L8095;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L8095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L8096;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L8096: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L8097;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L8097: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L8098;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L8098: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13111 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT))
    {
      return 634;  /* paritydi2_cmp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L6396;

 L6397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == IF_THEN_ELSE)
    goto L6398;
  goto ret0;

 L6398: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case CCFPmode:
      goto L65381;
    case CCFPUmode:
      goto L65382;
    default:
      break;
    }
  goto ret0;

 L65381: ATTRIBUTE_UNUSED_LABEL
  if (ix86_fp_comparison_operator (x3, CCFPmode))
    {
      operands[0] = x3;
      goto L6399;
    }
 L65383: ATTRIBUTE_UNUSED_LABEL
  if (ix86_swapped_fp_comparison_operator (x3, CCFPmode))
    {
      operands[0] = x3;
      goto L6876;
    }
  goto ret0;

 L6399: ATTRIBUTE_UNUSED_LABEL
  tem = recog_170 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L65383;

 L6876: ATTRIBUTE_UNUSED_LABEL
  return recog_171 (x0, insn, pnum_clobbers);

 L65382: ATTRIBUTE_UNUSED_LABEL
  if (ix86_fp_comparison_operator (x3, CCFPUmode))
    {
      operands[0] = x3;
      goto L6717;
    }
  goto ret0;

 L6717: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65396;
    case DFmode:
      goto L65397;
    case XFmode:
      goto L65398;
    default:
      break;
    }
  goto ret0;

 L65396: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L6718;
    }
  goto ret0;

 L6718: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L6719;
    }
  goto ret0;

 L6719: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6720;
    case PC:
      goto L6798;
    default:
     break;
   }
  goto ret0;

 L6720: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6721;

 L6721: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6722;
  goto ret0;

 L6722: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6723;
  goto ret0;

 L6723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6724;
  goto ret0;

 L6724: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6725;
  goto ret0;

 L6725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6726;
  goto ret0;

 L6726: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6727;
  goto ret0;

 L6727: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6728;
    }
  goto ret0;

 L6728: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11371 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 533;  /* *jccusf_i387 */
    }
  goto ret0;

 L6798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6799;
  goto ret0;

 L6799: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6800;

 L6800: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6801;
  goto ret0;

 L6801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6802;
  goto ret0;

 L6802: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6803;
  goto ret0;

 L6803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6804;
  goto ret0;

 L6804: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6805;
  goto ret0;

 L6805: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6806;
    }
  goto ret0;

 L6806: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 536;  /* *jccusf_r_i387 */
    }
  goto ret0;

 L65397: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L6744;
    }
  goto ret0;

 L6744: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L6745;
    }
  goto ret0;

 L6745: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6746;
    case PC:
      goto L6825;
    default:
     break;
   }
  goto ret0;

 L6746: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6747;

 L6747: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6748;
  goto ret0;

 L6748: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6749;
  goto ret0;

 L6749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6750;
  goto ret0;

 L6750: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6751;
  goto ret0;

 L6751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6752;
  goto ret0;

 L6752: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6753;
  goto ret0;

 L6753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6754;
    }
  goto ret0;

 L6754: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11371 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 534;  /* *jccudf_i387 */
    }
  goto ret0;

 L6825: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6826;
  goto ret0;

 L6826: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6827;

 L6827: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6828;
  goto ret0;

 L6828: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6829;
  goto ret0;

 L6829: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6830;
  goto ret0;

 L6830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6831;
  goto ret0;

 L6831: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6832;
  goto ret0;

 L6832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6833;
    }
  goto ret0;

 L6833: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 537;  /* *jccudf_r_i387 */
    }
  goto ret0;

 L65398: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, XFmode))
    {
      operands[1] = x4;
      goto L6770;
    }
  goto ret0;

 L6770: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, XFmode))
    {
      operands[2] = x4;
      goto L6771;
    }
  goto ret0;

 L6771: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  switch (GET_CODE (x3))
    {
    case LABEL_REF:
      goto L6772;
    case PC:
      goto L6852;
    default:
     break;
   }
  goto ret0;

 L6772: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6773;

 L6773: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L6774;
  goto ret0;

 L6774: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6775;
  goto ret0;

 L6775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6776;
  goto ret0;

 L6776: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6777;
  goto ret0;

 L6777: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6778;
  goto ret0;

 L6778: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6779;
  goto ret0;

 L6779: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6780;
    }
  goto ret0;

 L6780: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11371 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 535;  /* *jccuxf_i387 */
    }
  goto ret0;

 L6852: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == LABEL_REF)
    goto L6853;
  goto ret0;

 L6853: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L6854;

 L6854: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L6855;
  goto ret0;

 L6855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L6856;
  goto ret0;

 L6856: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L6857;
  goto ret0;

 L6857: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L6858;
  goto ret0;

 L6858: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L6859;
  goto ret0;

 L6859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L6860;
    }
  goto ret0;

 L6860: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11384 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE))
    {
      return 538;  /* *jccuxf_r_i387 */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_173 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L1181;
    }
 L65401: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L9528;
    }
 L65403: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9686;
    }
  goto ret0;

 L1181: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65404;
  x2 = XEXP (x1, 0);
  goto L65401;

 L65404: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L1182;
    case UNSPEC:
      goto L65407;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65401;

 L1182: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L1183;
    }
  x2 = XEXP (x1, 0);
  goto L65401;

 L1183: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L1184;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L1185;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1185: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L1186;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1186: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L1187;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1187: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L1188;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1188: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L1189;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1189: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L1190;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[5] = x2;
      goto L1191;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L1191: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4706 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1])))))
    {
      return 167;  /* fix_truncdi_i387_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L65407: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65409;
  x2 = XEXP (x1, 0);
  goto L65401;

 L65409: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L9236;
    case 65LL:
      goto L9262;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65401;

 L9236: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9237;
    }
  x2 = XEXP (x1, 0);
  goto L65401;

 L9237: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9238;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9238: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9239;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9239: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9240;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9240: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9241;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9242;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L9243;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9243: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L9244;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9244: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[5] = x2;
      goto L9245;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9245: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 751;  /* fistdi2_floor_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9262: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L9263;
    }
  x2 = XEXP (x1, 0);
  goto L65401;

 L9263: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9264;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L9265;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9265: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9266;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9266: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L9267;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9267: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9268;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L9269;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9269: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L9270;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, XFmode))
    {
      operands[5] = x2;
      goto L9271;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9271: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations))
    {
      return 752;  /* fistdi2_ceil_with_temp */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65401;

 L9528: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9529;
  x2 = XEXP (x1, 0);
  goto L65403;

 L9529: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9530;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9530: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9531;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9531: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9532;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9532: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L65411;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L65411: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ASHIFT)
    goto L9533;
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9579;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9533: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[5] = x4;
      goto L9534;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9534: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9535;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9535: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9536;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9536: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9537;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9538;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9538: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9539;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9539: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == ASHIFT)
    goto L9540;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9540: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[5]))
    goto L9541;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9541: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9542;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9542: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[4] = x3;
      goto L9543;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9543: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == SET)
    goto L9544;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9544: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9545;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9545: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9546;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9546: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9547;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9547: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[4]))
    goto L9548;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9548: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9549;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[5])
      && (
#line 16168 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 775;  /* *rep_movsi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9579: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[5] = x3;
      goto L9580;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9580: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9581;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9581: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9582;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9582: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9583;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9583: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[4] = x3;
      goto L9584;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9584: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[5]))
    goto L9585;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9585: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == SET)
    goto L9586;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9586: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9587;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9587: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9588;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9588: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9589;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9589: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[4]))
    goto L9590;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9590: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9591;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9591: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[5])
      && (
#line 16185 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 777;  /* *rep_movqi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65403;

 L9686: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9687;
  goto ret0;

 L9687: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9688;
  goto ret0;

 L9688: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9689;
    }
  goto ret0;

 L9689: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L9690;
  goto ret0;

 L9690: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L65413;
  goto ret0;

 L65413: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ASHIFT)
    goto L9691;
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9727;
    }
  goto ret0;

 L9691: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L9692;
    }
  goto ret0;

 L9692: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9693;
  goto ret0;

 L9693: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L9694;
    }
  goto ret0;

 L9694: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9695;
  goto ret0;

 L9695: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9696;
  goto ret0;

 L9696: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9697;
  goto ret0;

 L9697: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9698;
  goto ret0;

 L9698: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == USE)
    goto L9699;
  goto ret0;

 L9699: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9700;
    }
  goto ret0;

 L9700: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9701;
  goto ret0;

 L9701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[4])
      && (
#line 16348 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 785;  /* *rep_stossi */
    }
  goto ret0;

 L9727: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DImode))
    {
      operands[4] = x3;
      goto L9728;
    }
  goto ret0;

 L9728: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9729;
  goto ret0;

 L9729: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9730;
  goto ret0;

 L9730: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9731;
  goto ret0;

 L9731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9732;
  goto ret0;

 L9732: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == USE)
    goto L9733;
  goto ret0;

 L9733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L9734;
    }
  goto ret0;

 L9734: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9735;
  goto ret0;

 L9735: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[4])
      && (
#line 16364 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 787;  /* *rep_stosqi */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_174 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  switch (XVECLEN (x0, 0))
    {
    case 2:
      goto L140;
    case 3:
      goto L840;
    case 4:
      goto L963;
    case 5:
      goto L1179;
    case 6:
      goto L9737;
    case 10:
      goto L10386;
    case 11:
      goto L10413;
    default:
      break;
    }
 L56932: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x0, 0) >= 1
      && emms_operation (x0, VOIDmode))
    {
      operands[0] = x0;
      goto L11465;
    }
 L56939: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x0, 0) >= 1
      && vzeroall_operation (x0, VOIDmode))
    {
      operands[0] = x0;
      goto L41021;
    }
  goto ret0;

 L140: ATTRIBUTE_UNUSED_LABEL
  tem = recog_165 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L56932;

 L840: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L841;
    case CALL:
      goto L7304;
    default:
     break;
   }
  goto L56932;

 L841: ATTRIBUTE_UNUSED_LABEL
  tem = recog_168 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L56932;

 L7304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L7305;
  goto L56932;

 L7305: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (memory_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L7306;
    }
  goto L56932;

 L7306: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[1] = x2;
  goto L7307;

 L7307: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L7308;
  goto L56932;

 L7308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L7309;
  goto L56932;

 L7309: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L7310;
  goto L56932;

 L7310: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L7311;
  goto L56932;

 L7311: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L7312;
    }
  goto L56932;

 L7312: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 39)
    goto L7313;
  goto L56932;

 L7313: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 565;  /* *sibcall_pop_memory */
    }
  goto L56932;

 L963: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L964;
  goto L56932;

 L964: ATTRIBUTE_UNUSED_LABEL
  tem = recog_172 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L56932;

 L1179: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L1180;
  goto L56932;

 L1180: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L65399;
    case SImode:
      goto L65400;
    default:
      break;
    }
  goto L56932;

 L65399: ATTRIBUTE_UNUSED_LABEL
  tem = recog_173 (x0, insn, pnum_clobbers);
  if (tem >= 0)
    return tem;
  goto L56932;

 L65400: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9503;
    }
 L65402: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9667;
    }
  goto L56932;

 L9503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9504;
  x2 = XEXP (x1, 0);
  goto L65402;

 L9504: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9505;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9505: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9506;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9506: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9507;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9507: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L65415;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L65415: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ASHIFT)
    goto L9508;
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9558;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9508: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L9509;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9509: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9510;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9511;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9511: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9512;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9512: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9513;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9514;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9514: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ASHIFT)
    goto L9515;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9515: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[5]))
    goto L9516;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9516: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9517;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9517: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L9518;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9518: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == SET)
    goto L9519;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9519: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9520;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9520: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9521;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9521: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9522;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9522: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[4]))
    goto L9523;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9523: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9524;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9524: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[5])
      && (
#line 16168 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 774;  /* *rep_movsi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9558: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L9559;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9559: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9560;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9560: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9561;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9561: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9562;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9562: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L9563;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9563: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[5]))
    goto L9564;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9564: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == SET)
    goto L9565;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9565: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9566;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9566: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9567;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9567: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9568;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9568: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[4]))
    goto L9569;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9569: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9570;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[5])
      && (
#line 16185 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 776;  /* *rep_movqi */
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65402;

 L9667: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9668;
  goto L56932;

 L9668: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L9669;
  goto L56932;

 L9669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9670;
    }
  goto L56932;

 L9670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L9671;
  goto L56932;

 L9671: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L65417;
  goto L56932;

 L65417: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ASHIFT)
    goto L9672;
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9710;
    }
  goto L56932;

 L9672: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L9673;
    }
  goto L56932;

 L9673: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L9674;
  goto L56932;

 L9674: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L9675;
    }
  goto L56932;

 L9675: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9676;
  goto L56932;

 L9676: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9677;
  goto L56932;

 L9677: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9678;
  goto L56932;

 L9678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9679;
  goto L56932;

 L9679: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == USE)
    goto L9680;
  goto L56932;

 L9680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9681;
    }
  goto L56932;

 L9681: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9682;
  goto L56932;

 L9682: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[4])
      && (
#line 16348 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 784;  /* *rep_stossi */
    }
  goto L56932;

 L9710: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L9711;
    }
  goto L56932;

 L9711: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L9712;
  goto L56932;

 L9712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L9713;
  goto L56932;

 L9713: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L9714;
  goto L56932;

 L9714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9715;
  goto L56932;

 L9715: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == USE)
    goto L9716;
  goto L56932;

 L9716: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L9717;
    }
  goto L56932;

 L9717: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == USE)
    goto L9718;
  goto L56932;

 L9718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[4])
      && (
#line 16364 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 786;  /* *rep_stosqi */
    }
  goto L56932;

 L9737: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L9738;
  goto L56932;

 L9738: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L9739;
  goto L56932;

 L9739: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode)
    goto L65419;
  goto L56932;

 L65419: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case COMPARE:
      goto L9740;
    case IF_THEN_ELSE:
      goto L9778;
    default:
     break;
   }
  goto L56932;

 L9740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9741;
  goto L56932;

 L9741: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65421;
    case DImode:
      goto L65422;
    default:
      break;
    }
  goto L56932;

 L65421: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L9742;
    }
  goto L56932;

 L9742: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9743;
  goto L56932;

 L9743: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[5] = x4;
      goto L9744;
    }
  goto L56932;

 L9744: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9745;
  goto L56932;

 L9745: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[6] = x2;
      goto L9746;
    }
  goto L56932;

 L9746: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9747;
  goto L56932;

 L9747: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (immediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L9748;
    }
  goto L56932;

 L9748: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9749;
  goto L56932;

 L9749: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9750;
    }
  goto L56932;

 L9750: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L9751;
  goto L56932;

 L9751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9752;
    }
  goto L56932;

 L9752: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L9753;
  goto L56932;

 L9753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9754;
    }
  goto L56932;

 L9754: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16485 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 788;  /* *cmpstrnqi_nz_1 */
    }
  goto L56932;

 L65422: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DImode))
    {
      operands[4] = x4;
      goto L9761;
    }
  goto L56932;

 L9761: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L9762;
  goto L56932;

 L9762: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[5] = x4;
      goto L9763;
    }
  goto L56932;

 L9763: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9764;
  goto L56932;

 L9764: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[6] = x2;
      goto L9765;
    }
  goto L56932;

 L9765: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9766;
  goto L56932;

 L9766: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (immediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L9767;
    }
  goto L56932;

 L9767: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9768;
  goto L56932;

 L9768: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9769;
    }
  goto L56932;

 L9769: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L9770;
  goto L56932;

 L9770: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9771;
    }
  goto L56932;

 L9771: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L9772;
  goto L56932;

 L9772: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L9773;
    }
  goto L56932;

 L9773: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16485 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 789;  /* *cmpstrnqi_nz_1 */
    }
  goto L56932;

 L9778: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == NE)
    goto L9779;
  goto L56932;

 L9779: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65423;
    case DImode:
      goto L65424;
    default:
      break;
    }
  goto L56932;

 L65423: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[6] = x4;
      goto L9780;
    }
  goto L56932;

 L9780: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9781;
  goto L56932;

 L9781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == COMPARE)
    goto L9782;
  goto L56932;

 L9782: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L9783;
  goto L56932;

 L9783: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[4] = x5;
      goto L9784;
    }
  goto L56932;

 L9784: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L9785;
  goto L56932;

 L9785: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[5] = x5;
      goto L9786;
    }
  goto L56932;

 L9786: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9787;
  goto L56932;

 L9787: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9788;
  goto L56932;

 L9788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (immediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L9789;
    }
  goto L56932;

 L9789: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9790;
  goto L56932;

 L9790: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L9791;
  goto L56932;

 L9791: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9792;
  goto L56932;

 L9792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L9793;
    }
  goto L56932;

 L9793: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L9794;
  goto L56932;

 L9794: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L9795;
    }
  goto L56932;

 L9795: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L9796;
  goto L56932;

 L9796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L9797;
    }
  goto L56932;

 L9797: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16525 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 790;  /* *cmpstrnqi_1 */
    }
  goto L56932;

 L65424: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DImode))
    {
      operands[6] = x4;
      goto L9804;
    }
  goto L56932;

 L9804: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9805;
  goto L56932;

 L9805: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == COMPARE)
    goto L9806;
  goto L56932;

 L9806: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L9807;
  goto L56932;

 L9807: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, DImode))
    {
      operands[4] = x5;
      goto L9808;
    }
  goto L56932;

 L9808: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L9809;
  goto L56932;

 L9809: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, DImode))
    {
      operands[5] = x5;
      goto L9810;
    }
  goto L56932;

 L9810: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L9811;
  goto L56932;

 L9811: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L9812;
  goto L56932;

 L9812: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (immediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L9813;
    }
  goto L56932;

 L9813: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L9814;
  goto L56932;

 L9814: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L9815;
  goto L56932;

 L9815: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L9816;
  goto L56932;

 L9816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L9817;
    }
  goto L56932;

 L9817: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L9818;
  goto L56932;

 L9818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L9819;
    }
  goto L56932;

 L9819: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L9820;
  goto L56932;

 L9820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L9821;
    }
  goto L56932;

 L9821: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16525 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(fixed_regs[CX_REG] || fixed_regs[SI_REG] || fixed_regs[DI_REG])) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 791;  /* *cmpstrnqi_1 */
    }
  goto L56932;

 L10386: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L10387;
  goto L56932;

 L10387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, BLKmode))
    {
      operands[0] = x2;
      goto L10388;
    }
  goto L56932;

 L10388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == UNSPEC_VOLATILE
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 35)
    goto L10389;
  goto L56932;

 L10389: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L10390;
  goto L56932;

 L10390: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10391;
  goto L56932;

 L10391: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 19)
    goto L10392;
  goto L56932;

 L10392: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10393;
  goto L56932;

 L10393: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 8)
    goto L10394;
  goto L56932;

 L10394: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L10395;
  goto L56932;

 L10395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 9)
    goto L10396;
  goto L56932;

 L10396: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L10397;
  goto L56932;

 L10397: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 10)
    goto L10398;
  goto L56932;

 L10398: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L10399;
  goto L56932;

 L10399: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 11)
    goto L10400;
  goto L56932;

 L10400: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 6);
  if (GET_CODE (x1) == CLOBBER)
    goto L10401;
  goto L56932;

 L10401: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 12)
    goto L10402;
  goto L56932;

 L10402: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 7);
  if (GET_CODE (x1) == CLOBBER)
    goto L10403;
  goto L56932;

 L10403: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 13)
    goto L10404;
  goto L56932;

 L10404: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 8);
  if (GET_CODE (x1) == CLOBBER)
    goto L10405;
  goto L56932;

 L10405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 14)
    goto L10406;
  goto L56932;

 L10406: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 9);
  if (GET_CODE (x1) == CLOBBER)
    goto L10407;
  goto L56932;

 L10407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 15
      && 
#line 18553 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 849;  /* fnstenv */
    }
  goto L56932;

 L10413: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == UNSPEC_VOLATILE
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 36)
    goto L10414;
  goto L56932;

 L10414: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (memory_operand (x2, BLKmode))
    {
      operands[0] = x2;
      goto L10415;
    }
  goto L56932;

 L10415: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L10416;
  goto L56932;

 L10416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L10417;
  goto L56932;

 L10417: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L10418;
  goto L56932;

 L10418: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 19)
    goto L10419;
  goto L56932;

 L10419: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L10420;
  goto L56932;

 L10420: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 8)
    goto L10421;
  goto L56932;

 L10421: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L10422;
  goto L56932;

 L10422: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 9)
    goto L10423;
  goto L56932;

 L10423: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L10424;
  goto L56932;

 L10424: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 10)
    goto L10425;
  goto L56932;

 L10425: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 6);
  if (GET_CODE (x1) == CLOBBER)
    goto L10426;
  goto L56932;

 L10426: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 11)
    goto L10427;
  goto L56932;

 L10427: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 7);
  if (GET_CODE (x1) == CLOBBER)
    goto L10428;
  goto L56932;

 L10428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 12)
    goto L10429;
  goto L56932;

 L10429: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 8);
  if (GET_CODE (x1) == CLOBBER)
    goto L10430;
  goto L56932;

 L10430: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 13)
    goto L10431;
  goto L56932;

 L10431: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 9);
  if (GET_CODE (x1) == CLOBBER)
    goto L10432;
  goto L56932;

 L10432: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 14)
    goto L10433;
  goto L56932;

 L10433: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 10);
  if (GET_CODE (x1) == CLOBBER)
    goto L10434;
  goto L56932;

 L10434: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 15
      && 
#line 18573 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 850;  /* fldenv */
    }
  goto L56932;

 L11465: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == UNSPEC_VOLATILE)
    goto L65425;
  goto L56939;

 L65425: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L65427;
  goto L56939;

 L65427: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 49LL:
      goto L11466;
    case 50LL:
      goto L11469;
    default:
      break;
    }
  goto L56939;

 L11466: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1578 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX))
    {
      return 995;  /* *mmx_emms */
    }
  goto L56939;

 L11469: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 1611 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_3DNOW))
    {
      return 996;  /* *mmx_femms */
    }
  goto L56939;

 L41021: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == UNSPEC_VOLATILE
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 56)
    goto L41022;
  goto ret0;

 L41022: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16462 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 3865;  /* *avx_vzeroall */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_175 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  switch (GET_MODE (x1))
    {
    case HImode:
      goto L65459;
    case QImode:
      goto L65460;
    default:
      break;
    }
 L39270: ATTRIBUTE_UNUSED_LABEL
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)])
    goto L39271;
  goto ret0;

 L65459: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L39235;
    }
  goto L39270;

 L39235: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (vsib_mem_operator (x1, V16SFmode))
    {
      operands[5] = x1;
      goto L39236;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39236: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65461;
    case DImode:
      goto L65462;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65461: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39237;
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39237: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39238;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39238: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L39239;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39239: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39240;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39240: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39241;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39241: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15104 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3699;  /* *avx512pf_gatherpfv16sisf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65462: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39246;
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39246: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L39247;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39247: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L39248;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39248: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39249;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39249: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39250;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39250: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15104 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3700;  /* *avx512pf_gatherpfv16sisf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65460: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L39253;
    }
  goto L39270;

 L39253: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_MODE (x1))
    {
    case V8SFmode:
      goto L65463;
    case V8DFmode:
      goto L65464;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65463: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8SFmode))
    {
      operands[5] = x1;
      goto L39254;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65465;
    case DImode:
      goto L65466;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65465: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39255;
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39255: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39256;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39256: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39257;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39257: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39258;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39258: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39259;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39259: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15104 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3701;  /* *avx512pf_gatherpfv8disf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65466: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39264;
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39264: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L39265;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39265: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39266;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39266: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39267;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39267: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39268;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39268: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15104 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3702;  /* *avx512pf_gatherpfv8disf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65464: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8DFmode))
    {
      operands[5] = x1;
      goto L39308;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39308: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65467;
    case DImode:
      goto L65468;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65467: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39309;
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39309: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39310;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39310: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65469;
    case V8DImode:
      goto L65470;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65469: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L39311;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39311: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39312;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39312: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39313;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39313: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3707;  /* *avx512pf_gatherpfv8sidf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65470: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39329;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39329: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39330;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39330: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39331;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39331: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3709;  /* *avx512pf_gatherpfv8didf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65468: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39318;
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39318: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L39319;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39319: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65471;
    case V8DImode:
      goto L65472;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65471: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L39320;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39320: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39321;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39321: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39322;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39322: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3708;  /* *avx512pf_gatherpfv8sidf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L65472: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39338;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39338: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39339;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39339: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39340;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39340: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15176 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3710;  /* *avx512pf_gatherpfv8didf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39270;

 L39271: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_MODE (x1))
    {
    case V16SFmode:
      goto L65473;
    case V8SFmode:
      goto L65474;
    case V8DFmode:
      goto L65475;
    default:
      break;
    }
  goto ret0;

 L65473: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V16SFmode))
    {
      operands[4] = x1;
      goto L39272;
    }
  goto ret0;

 L39272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65476;
    case DImode:
      goto L65477;
    default:
      break;
    }
  goto ret0;

 L65476: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39273;
  goto ret0;

 L39273: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L39274;
    }
  goto ret0;

 L39274: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[0] = x3;
      goto L39275;
    }
  goto ret0;

 L39275: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39276;
    }
  goto ret0;

 L39276: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39277;
    }
  goto ret0;

 L39277: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15131 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3703;  /* *avx512pf_gatherpfv16sisf */
    }
  goto ret0;

 L65477: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39282;
  goto ret0;

 L39282: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L39283;
    }
  goto ret0;

 L39283: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[0] = x3;
      goto L39284;
    }
  goto ret0;

 L39284: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39285;
    }
  goto ret0;

 L39285: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39286;
    }
  goto ret0;

 L39286: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15131 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3704;  /* *avx512pf_gatherpfv16sisf */
    }
  goto ret0;

 L65474: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8SFmode))
    {
      operands[4] = x1;
      goto L39290;
    }
  goto ret0;

 L39290: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65478;
    case DImode:
      goto L65479;
    default:
      break;
    }
  goto ret0;

 L65478: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39291;
  goto ret0;

 L39291: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L39292;
    }
  goto ret0;

 L39292: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39293;
    }
  goto ret0;

 L39293: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39294;
    }
  goto ret0;

 L39294: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39295;
    }
  goto ret0;

 L39295: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15131 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3705;  /* *avx512pf_gatherpfv8disf */
    }
  goto ret0;

 L65479: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39300;
  goto ret0;

 L39300: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L39301;
    }
  goto ret0;

 L39301: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39302;
    }
  goto ret0;

 L39302: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39303;
    }
  goto ret0;

 L39303: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39304;
    }
  goto ret0;

 L39304: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15131 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3706;  /* *avx512pf_gatherpfv8disf */
    }
  goto ret0;

 L65475: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8DFmode))
    {
      operands[4] = x1;
      goto L39344;
    }
  goto ret0;

 L39344: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65480;
    case DImode:
      goto L65481;
    default:
      break;
    }
  goto ret0;

 L65480: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39345;
  goto ret0;

 L39345: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L39346;
    }
  goto ret0;

 L39346: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65482;
    case V8DImode:
      goto L65483;
    default:
      break;
    }
  goto ret0;

 L65482: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[0] = x3;
      goto L39347;
    }
  goto ret0;

 L39347: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39348;
    }
  goto ret0;

 L39348: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39349;
    }
  goto ret0;

 L39349: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15203 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3711;  /* *avx512pf_gatherpfv8sidf */
    }
  goto ret0;

 L65483: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39365;
    }
  goto ret0;

 L39365: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39366;
    }
  goto ret0;

 L39366: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39367;
    }
  goto ret0;

 L39367: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15203 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3713;  /* *avx512pf_gatherpfv8didf */
    }
  goto ret0;

 L65481: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39354;
  goto ret0;

 L39354: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L39355;
    }
  goto ret0;

 L39355: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65484;
    case V8DImode:
      goto L65485;
    default:
      break;
    }
  goto ret0;

 L65484: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[0] = x3;
      goto L39356;
    }
  goto ret0;

 L39356: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39357;
    }
  goto ret0;

 L39357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39358;
    }
  goto ret0;

 L39358: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15203 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3712;  /* *avx512pf_gatherpfv8sidf */
    }
  goto ret0;

 L65485: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39374;
    }
  goto ret0;

 L39374: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39375;
    }
  goto ret0;

 L39375: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_2_to_3_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39376;
    }
  goto ret0;

 L39376: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15203 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3714;  /* *avx512pf_gatherpfv8didf */
    }
  goto ret0;
 ret0:
  return -1;
}

static int
recog_176 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  switch (GET_MODE (x1))
    {
    case HImode:
      goto L65486;
    case QImode:
      goto L65487;
    default:
      break;
    }
 L39414: ATTRIBUTE_UNUSED_LABEL
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)])
    goto L39415;
  goto ret0;

 L65486: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L39379;
    }
  goto L39414;

 L39379: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (vsib_mem_operator (x1, V16SFmode))
    {
      operands[5] = x1;
      goto L39380;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39380: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65488;
    case DImode:
      goto L65489;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65488: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39381;
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39381: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39382;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39382: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L39383;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39383: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39384;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39384: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39385;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39385: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15248 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3715;  /* *avx512pf_scatterpfv16sisf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65489: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39390;
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39390: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L39391;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39391: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[1] = x3;
      goto L39392;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39392: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39393;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39393: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39394;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39394: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15248 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3716;  /* *avx512pf_scatterpfv16sisf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65487: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L39397;
    }
  goto L39414;

 L39397: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_MODE (x1))
    {
    case V8SFmode:
      goto L65490;
    case V8DFmode:
      goto L65491;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65490: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8SFmode))
    {
      operands[5] = x1;
      goto L39398;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65492;
    case DImode:
      goto L65493;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65492: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39399;
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39399: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39400;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39400: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39401;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39401: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39402;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39402: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39403;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39403: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15248 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3717;  /* *avx512pf_scatterpfv8disf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65493: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39408;
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39408: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L39409;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39409: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39410;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39410: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39411;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39411: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39412;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39412: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15248 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3718;  /* *avx512pf_scatterpfv8disf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65491: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8DFmode))
    {
      operands[5] = x1;
      goto L39452;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39452: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65494;
    case DImode:
      goto L65495;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65494: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39453;
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39453: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39454;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39454: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65496;
    case V8DImode:
      goto L65497;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65496: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L39455;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39455: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39456;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39456: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39457;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39457: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3723;  /* *avx512pf_scatterpfv8sidf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65497: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39473;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39473: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39474;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39474: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39475;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39475: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3725;  /* *avx512pf_scatterpfv8didf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65495: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39462;
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39462: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L39463;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39463: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65498;
    case V8DImode:
      goto L65499;
    default:
      break;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65498: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[1] = x3;
      goto L39464;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39464: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39465;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39465: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39466;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39466: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3724;  /* *avx512pf_scatterpfv8sidf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L65499: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[1] = x3;
      goto L39482;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39482: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L39483;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39483: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[4] = x1;
      goto L39484;
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39484: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15324 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3726;  /* *avx512pf_scatterpfv8didf_mask */
    }
  x1 = XVECEXP (x0, 0, 0);
  goto L39414;

 L39415: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  switch (GET_MODE (x1))
    {
    case V16SFmode:
      goto L65500;
    case V8SFmode:
      goto L65501;
    case V8DFmode:
      goto L65502;
    default:
      break;
    }
  goto ret0;

 L65500: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V16SFmode))
    {
      operands[4] = x1;
      goto L39416;
    }
  goto ret0;

 L39416: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65503;
    case DImode:
      goto L65504;
    default:
      break;
    }
  goto ret0;

 L65503: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39417;
  goto ret0;

 L39417: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L39418;
    }
  goto ret0;

 L39418: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[0] = x3;
      goto L39419;
    }
  goto ret0;

 L39419: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39420;
    }
  goto ret0;

 L39420: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39421;
    }
  goto ret0;

 L39421: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3719;  /* *avx512pf_scatterpfv16sisf */
    }
  goto ret0;

 L65504: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39426;
  goto ret0;

 L39426: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L39427;
    }
  goto ret0;

 L39427: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V16SImode))
    {
      operands[0] = x3;
      goto L39428;
    }
  goto ret0;

 L39428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39429;
    }
  goto ret0;

 L39429: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39430;
    }
  goto ret0;

 L39430: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3720;  /* *avx512pf_scatterpfv16sisf */
    }
  goto ret0;

 L65501: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8SFmode))
    {
      operands[4] = x1;
      goto L39434;
    }
  goto ret0;

 L39434: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65505;
    case DImode:
      goto L65506;
    default:
      break;
    }
  goto ret0;

 L65505: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39435;
  goto ret0;

 L39435: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L39436;
    }
  goto ret0;

 L39436: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39437;
    }
  goto ret0;

 L39437: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39438;
    }
  goto ret0;

 L39438: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39439;
    }
  goto ret0;

 L39439: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3721;  /* *avx512pf_scatterpfv8disf */
    }
  goto ret0;

 L65506: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39444;
  goto ret0;

 L39444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L39445;
    }
  goto ret0;

 L39445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39446;
    }
  goto ret0;

 L39446: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39447;
    }
  goto ret0;

 L39447: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39448;
    }
  goto ret0;

 L39448: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15277 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3722;  /* *avx512pf_scatterpfv8disf */
    }
  goto ret0;

 L65502: ATTRIBUTE_UNUSED_LABEL
  if (vsib_mem_operator (x1, V8DFmode))
    {
      operands[4] = x1;
      goto L39488;
    }
  goto ret0;

 L39488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65507;
    case DImode:
      goto L65508;
    default:
      break;
    }
  goto ret0;

 L65507: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39489;
  goto ret0;

 L39489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L39490;
    }
  goto ret0;

 L39490: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65509;
    case V8DImode:
      goto L65510;
    default:
      break;
    }
  goto ret0;

 L65509: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[0] = x3;
      goto L39491;
    }
  goto ret0;

 L39491: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39492;
    }
  goto ret0;

 L39492: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39493;
    }
  goto ret0;

 L39493: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15353 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3727;  /* *avx512pf_scatterpfv8sidf */
    }
  goto ret0;

 L65510: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39509;
    }
  goto ret0;

 L39509: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39510;
    }
  goto ret0;

 L39510: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39511;
    }
  goto ret0;

 L39511: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15353 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3729;  /* *avx512pf_scatterpfv8didf */
    }
  goto ret0;

 L65508: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 146)
    goto L39498;
  goto ret0;

 L39498: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (vsib_address_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L39499;
    }
  goto ret0;

 L39499: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  switch (GET_MODE (x3))
    {
    case V8SImode:
      goto L65511;
    case V8DImode:
      goto L65512;
    default:
      break;
    }
  goto ret0;

 L65511: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8SImode))
    {
      operands[0] = x3;
      goto L39500;
    }
  goto ret0;

 L39500: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39501;
    }
  goto ret0;

 L39501: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39502;
    }
  goto ret0;

 L39502: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15353 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3728;  /* *avx512pf_scatterpfv8sidf */
    }
  goto ret0;

 L65512: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, V8DImode))
    {
      operands[0] = x3;
      goto L39518;
    }
  goto ret0;

 L39518: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const1248_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L39519;
    }
  goto ret0;

 L39519: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const2367_operand (x1, SImode))
    {
      operands[3] = x1;
      goto L39520;
    }
  goto ret0;

 L39520: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15353 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512PF) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3730;  /* *avx512pf_scatterpfv8didf */
    }
  goto ret0;
 ret0:
  return -1;
}

int
recog (rtx x0 ATTRIBUTE_UNUSED,
	rtx uncast_insn ATTRIBUTE_UNUSED,
	int *pnum_clobbers ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  int tem ATTRIBUTE_UNUSED;
  recog_data.insn = NULL_RTX;
  rtx_insn *insn ATTRIBUTE_UNUSED;
  insn = safe_as_a <rtx_insn *> (uncast_insn);

  if (GET_MODE (x0) == BLKmode)
    goto L56904;
 L0: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x0))
    {
    case SET:
      goto L119;
    case PARALLEL:
      goto L56906;
    case CALL:
      goto L7247;
    case UNSPEC_VOLATILE:
      goto L56910;
    case SIMPLE_RETURN:
      goto L56912;
    case CONST_INT:
      goto L56913;
    case EH_RETURN:
      goto L56916;
    case TRAP_IF:
      goto L10168;
    case PREFETCH:
      goto L10171;
    case UNSPEC:
      goto L56937;
    default:
     break;
   }
  goto ret0;

 L56904: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == UNSPEC_VOLATILE)
    goto L56941;
  goto L0;

 L56941: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x0, 0) == 2)
    goto L56943;
  goto L0;

 L56943: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x0, 1))
    {
    case 24LL:
      goto L10378;
    case 30LL:
      goto L10382;
    default:
      break;
    }
  goto L0;

 L10378: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (memory_operand (x1, BLKmode))
    {
      operands[0] = x1;
      goto L10379;
    }
  goto L0;

 L10379: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (register_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L10380;
    }
  goto L0;

 L10380: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18500 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_XSAVE))
    {
      return 847;  /* xrstor */
    }
  goto L0;

 L10382: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (memory_operand (x1, BLKmode))
    {
      operands[0] = x1;
      goto L10383;
    }
  goto L0;

 L10383: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (register_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L10384;
    }
  goto L0;

 L10384: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18500 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_XSAVE) && 
#line 18445 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_XSAVES)))
    {
      return 848;  /* xrstors */
    }
  goto L0;

 L119: ATTRIBUTE_UNUSED_LABEL
  return recog_121 (x0, insn, pnum_clobbers);

 L56906: ATTRIBUTE_UNUSED_LABEL
  return recog_174 (x0, insn, pnum_clobbers);

 L7247: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (GET_MODE (x1) == QImode
      && GET_CODE (x1) == MEM)
    goto L7248;
  goto ret0;

 L7248: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (call_insn_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7249;
    }
 L7253: ATTRIBUTE_UNUSED_LABEL
  if (call_insn_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L7254;
    }
 L7258: ATTRIBUTE_UNUSED_LABEL
  if (sibcall_insn_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L7259;
    }
 L7263: ATTRIBUTE_UNUSED_LABEL
  if (sibcall_insn_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L7264;
    }
  goto ret0;

 L7249: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  operands[1] = x1;
  goto L7250;

 L7250: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11706 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      return 557;  /* *call */
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L7253;

 L7254: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  operands[1] = x1;
  goto L7255;

 L7255: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11706 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      return 558;  /* *call */
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L7258;

 L7259: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  operands[1] = x1;
  goto L7260;

 L7260: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11713 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      return 559;  /* *sibcall */
    }
  x1 = XEXP (x0, 0);
  x2 = XEXP (x1, 0);
  goto L7263;

 L7264: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  operands[1] = x1;
  goto L7265;

 L7265: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11713 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(SIBLING_CALL_P (insn)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      return 560;  /* *sibcall */
    }
  goto ret0;

 L56910: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x0, 0))
    {
    case 1:
      goto L65429;
    case 3:
      goto L65439;
    case 2:
      goto L65447;
    default:
      break;
    }
  goto ret0;

 L65429: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x0, 1))
    {
    case 0LL:
      goto L7401;
    case 4LL:
      goto L7407;
    case 7LL:
      goto L7425;
    case 3LL:
      goto L7428;
    case 5LL:
      goto L7475;
    case 6LL:
      goto L9403;
    case 20LL:
      goto L10355;
    case 36LL:
      goto L10436;
    case 38LL:
      goto L10443;
    case 11LL:
      goto L10445;
    case 42LL:
      goto L10526;
    case 43LL:
      goto L10528;
    case 47LL:
      goto L10535;
    case 46LL:
      goto L10537;
    case 48LL:
      goto L10540;
    case 51LL:
      goto L35780;
    case 53LL:
      goto L35787;
    case 57LL:
      goto L41024;
    default:
      break;
    }
  goto ret0;

 L7401: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 575;  /* blockage */
    }
  goto ret0;

 L7407: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  operands[0] = x1;
  return 577;  /* prologue_use */

 L7425: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (const_int_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L7426;
    }
  goto ret0;

 L7426: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12177 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 583;  /* nops */
    }
  goto ret0;

 L7428: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  operands[0] = x1;
  return 584;  /* pad */

 L7475: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (const_int_operand (x1, SImode))
    {
      operands[0] = x1;
      return 590;  /* split_stack_return */
    }
  goto ret0;

 L9403: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return 767;  /* cld */
    }
  goto ret0;

 L10355: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (memory_operand (x1, BLKmode))
    {
      operands[0] = x1;
      goto L10356;
    }
  goto ret0;

 L10356: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18404 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_FXSR))
    {
      return 842;  /* fxrstor */
    }
  goto ret0;

 L10436: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (memory_operand (x1, BLKmode))
    {
      operands[0] = x1;
      goto L10437;
    }
  goto ret0;

 L10437: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18573 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387)
      && pnum_clobbers != NULL)
    {
      *pnum_clobbers = 10;
      return 850;  /* fldenv */
    }
  goto ret0;

 L10443: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18592 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return 852;  /* fnclex */
    }
  goto ret0;

 L10445: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L65450;
    case DImode:
      goto L65451;
    default:
      break;
    }
  goto ret0;

 L65450: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L10446;
    }
  goto ret0;

 L10446: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18612 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LWP) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 853;  /* *lwp_llwpcbsi1 */
    }
  goto ret0;

 L65451: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L10449;
    }
  goto ret0;

 L10449: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18612 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LWP) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 854;  /* *lwp_llwpcbdi1 */
    }
  goto ret0;

 L10526: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18792 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RTM))
    {
      return 865;  /* xend */
    }
  goto ret0;

 L10528: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (const_0_to_255_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L10529;
    }
  goto ret0;

 L10529: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18800 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_RTM))
    {
      return 866;  /* xabort */
    }
  goto ret0;

 L10535: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 18827 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_PCOMMIT))
    {
      return 868;  /* pcommit */
    }
  goto ret0;

 L10537: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (address_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L10538;
    }
  goto ret0;

 L10538: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18835 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CLWB))
    {
      return 869;  /* clwb */
    }
  goto ret0;

 L10540: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (address_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L10541;
    }
  goto ret0;

 L10541: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18844 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CLFLUSHOPT))
    {
      return 870;  /* clflushopt */
    }
  goto ret0;

 L35780: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L35781;
    }
  goto ret0;

 L35781: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13138 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE))
    {
      return 3475;  /* sse_ldmxcsr */
    }
  goto ret0;

 L35787: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (address_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L35788;
    }
  goto ret0;

 L35788: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13158 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2))
    {
      return 3477;  /* sse2_clflush */
    }
  goto ret0;

 L41024: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 16475 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX))
    {
      return 3866;  /* avx_vzeroupper */
    }
  goto ret0;

 L65439: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x0, 1))
    {
    case 13LL:
      goto L10459;
    case 54LL:
      goto L35794;
    default:
      break;
    }
  goto ret0;

 L10459: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L10460;
    }
  goto ret0;

 L10460: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (nonimmediate_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L10461;
    }
  goto ret0;

 L10461: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (const_int_operand (x1, SImode))
    {
      operands[2] = x1;
      goto L10462;
    }
  goto ret0;

 L10462: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LWP))
    {
      return 857;  /* *lwp_lwpvalsi3_1 */
    }
  goto ret0;

 L35794: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L65452;
    case DImode:
      goto L65453;
    default:
      break;
    }
  goto ret0;

 L65452: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L35795;
    }
  goto ret0;

 L35795: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L35796;
    }
  goto ret0;

 L35796: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (register_operand (x1, SImode))
    {
      operands[2] = x1;
      goto L35797;
    }
  goto ret0;

 L35797: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13181 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return 3479;  /* sse3_monitor_si */
    }
  goto ret0;

 L65453: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L35800;
    }
  goto ret0;

 L35800: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L35801;
    }
  goto ret0;

 L35801: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (register_operand (x1, SImode))
    {
      operands[2] = x1;
      goto L35802;
    }
  goto ret0;

 L35802: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13181 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return 3480;  /* sse3_monitor_di */
    }
  goto ret0;

 L65447: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x0, 1) == 55)
    goto L35790;
  goto ret0;

 L35790: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L35791;
    }
  goto ret0;

 L35791: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L35792;
    }
  goto ret0;

 L35792: ATTRIBUTE_UNUSED_LABEL
  if (
#line 13169 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3))
    {
      return 3478;  /* sse3_mwait */
    }
  goto ret0;

 L56912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12121 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return 578;  /* simple_return_internal */
    }
  goto ret0;

 L56913: ATTRIBUTE_UNUSED_LABEL
  if (XWINT (x0, 0) == 0LL)
    {
      return 582;  /* nop */
    }
  goto ret0;

 L56916: ATTRIBUTE_UNUSED_LABEL
  return 588;  /* eh_return_internal */

 L10168: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L10169;
  goto ret0;

 L10169: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    {
      return 823;  /* trap */
    }
  goto ret0;

 L10171: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (address_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L10172;
    }
  goto ret0;

 L10172: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_CODE (x1) == CONST_INT)
    goto L65454;
  goto ret0;

 L65454: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x1, 0) == XWINT (x1, 0))
    switch ((int) XWINT (x1, 0))
      {
      case 0LL:
        goto L10173;
      case 1LL:
        goto L10182;
      default:
        break;
      }
 L65455: ATTRIBUTE_UNUSED_LABEL
  if (const_int_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L10178;
    }
  goto ret0;

 L10173: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 2);
  if (const_int_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L10174;
    }
  x1 = XEXP (x0, 1);
  goto L65455;

 L10174: ATTRIBUTE_UNUSED_LABEL
  if (
#line 18147 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_PREFETCH_SSE))
    {
      return 824;  /* *prefetch_sse */
    }
  x1 = XEXP (x0, 1);
  goto L65455;

 L10182: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 2);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 18184 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_PREFETCHWT1))
    {
      return 826;  /* *prefetch_prefetchwt1 */
    }
  x1 = XEXP (x0, 1);
  goto L65455;

 L10178: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 2);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 18168 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_PRFCHW))
    {
      return 825;  /* *prefetch_3dnow */
    }
  goto ret0;

 L56937: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x0, 0) == 3)
    goto L65457;
  goto ret0;

 L65457: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x0, 1))
    {
    case 170LL:
      goto L39234;
    case 171LL:
      goto L39378;
    default:
      break;
    }
  goto ret0;

 L39234: ATTRIBUTE_UNUSED_LABEL
  return recog_175 (x0, insn, pnum_clobbers);

 L39378: ATTRIBUTE_UNUSED_LABEL
  return recog_176 (x0, insn, pnum_clobbers);
 ret0:
  return -1;
}

static rtx
split_1 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG)
    goto L65570;
 L65520: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52489;
    }
 L65527: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52785;
    }
 L65543: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L54722;
    }
  goto ret0;

 L65570: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L53370;
    }
 L65571: ATTRIBUTE_UNUSED_LABEL
  if (general_reg_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L53518;
    }
  goto L65520;

 L53370: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65572;
  x2 = XEXP (x1, 0);
  goto L65571;

 L65572: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53371;
    case IOR:
      goto L53379;
    case XOR:
      goto L53387;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53371: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53372;
    }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53372: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53373;
    }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53373: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53374;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65571;

 L53374: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5007 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65571;

 L53379: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53380;
    }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53380: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53381;
    }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53381: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53382;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65571;

 L53382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5008 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65571;

 L53387: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53388;
    }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53388: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53389;
    }
  x2 = XEXP (x1, 0);
  goto L65571;

 L53389: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53390;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65571;

 L53390: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5009 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65571;

 L53518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L53519;
  x2 = XEXP (x1, 0);
  goto L65520;

 L53519: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == XOR)
    goto L53520;
  x2 = XEXP (x1, 0);
  goto L65520;

 L53520: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L53521;
  x2 = XEXP (x1, 0);
  goto L65520;

 L53521: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_reg_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L53522;
    }
  x2 = XEXP (x1, 0);
  goto L65520;

 L53522: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53523;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65520;

 L53523: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5034 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65520;

 L52489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65575;
  x2 = XEXP (x1, 0);
  goto L65527;

 L65575: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L52490;
    case PLUS:
      goto L53036;
    case AND:
      goto L53445;
    case ASHIFT:
      goto L53748;
    case LSHIFTRT:
      goto L53798;
    case ASHIFTRT:
      goto L53806;
    case ROTATE:
      goto L53836;
    case ROTATERT:
      goto L53844;
    case CTZ:
      goto L54494;
    case CLZ:
      goto L54508;
    case POPCOUNT:
      goto L54522;
    case UNSPEC:
      goto L65588;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case GEU:
    case GTU:
    case LEU:
    case LTU:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L65583;
    default:
      x2 = XEXP (x1, 0);
      goto L65527;
   }
 L65583: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x2, SImode))
    {
      operands[1] = x2;
      goto L53868;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L52490: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L65589;
    case HImode:
      goto L65590;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L65589: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L52491;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L52491: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52492;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L52492: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 3635 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
#line 3637 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4820 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L65590: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L52498;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L52498: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52499;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L52499: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 3635 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
#line 3637 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4821 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L65592;
  x2 = XEXP (x1, 0);
  goto L65527;

 L65592: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 4
      && XINT (x3, 1) == 22)
    goto L54576;
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53037;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54576: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (tls_modbase_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L54577;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54577: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  operands[4] = x4;
  goto L54578;

 L54578: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (register_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L54579;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54579: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 3);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54580;
  x2 = XEXP (x1, 0);
  goto L65527;

 L54580: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == CONST)
    goto L54581;
  x2 = XEXP (x1, 0);
  goto L65527;

 L54581: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 6)
    goto L54582;
  x2 = XEXP (x1, 0);
  goto L65527;

 L54582: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (tls_symbolic_operand (x5, VOIDmode))
    {
      operands[1] = x5;
      goto L54583;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54583: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54584;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54584: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return gen_split_5212 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_nonmemory_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53038;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53038: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53039;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L65593;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L65593: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65595;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L65595: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L65597;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L65597: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5505 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_avoid_lea_for_add (insn, operands)))
    {
      return gen_split_4921 (insn, operands);
    }
 L65598: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5516 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_lea_for_add_ok (insn, operands)))
    {
      return gen_split_4925 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53445: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53446;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53446: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53447;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53447: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53448;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8004 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && true_regnum (operands[0]) != true_regnum (operands[1])))
    {
      return gen_split_5019 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53748: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53749;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53749: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53750;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53750: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53751;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9461 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed))
    {
      return gen_split_5087 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53798: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53799;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53799: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53800;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53800: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53801;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53801: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10088 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed))
    {
      return gen_split_5102 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53806: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53807;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53807: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53808;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53808: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53809;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10088 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed))
    {
      return gen_split_5103 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53836: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53837;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53837: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53838;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53838: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53839;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53839: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10461 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed))
    {
      return gen_split_5114 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53844: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53845;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53845: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53846;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L53846: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53847;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10474 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed))
    {
      return gen_split_5115 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L54495;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54495: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54496;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_BMI || TARGET_GENERIC)
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 12483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5190 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54508: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L54509;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54509: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54510;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12576 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 12579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5196 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54522: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L54523;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54523: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54524;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54524: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12933 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 12936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5201 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L65588: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 56)
    goto L54707;
  x2 = XEXP (x1, 0);
  goto L65527;

 L54707: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54708;
    }
  x2 = XEXP (x1, 0);
  goto L65527;

 L54708: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54709;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54709: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L54710;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L54710: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15397 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5297 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53868: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L53869;
  x2 = XEXP (x1, 0);
  goto L65527;

 L53869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53870;
  x2 = XEXP (x1, 0);
  goto L65527;

 L53870: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53871;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L53871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 10855 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL
   && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
#line 10858 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5121 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65527;

 L52785: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65599;
  x2 = XEXP (x1, 0);
  goto L65543;

 L65599: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52786;
    case UNSPEC:
      goto L65602;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65543;

 L52786: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52787;
    }
  x2 = XEXP (x1, 0);
  goto L65543;

 L52787: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52788;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65543;

 L52788: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
   && can_create_pseudo_p ()) && 
#line 4662 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4880 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65543;

 L65602: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65604;
  x2 = XEXP (x1, 0);
  goto L65543;

 L65604: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54773;
    case 65LL:
      goto L54780;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65543;

 L54773: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54774;
    }
  x2 = XEXP (x1, 0);
  goto L65543;

 L54774: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54775;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65543;

 L54775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5332 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65543;

 L54780: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54781;
    }
  x2 = XEXP (x1, 0);
  goto L65543;

 L54781: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54782;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65543;

 L54782: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5333 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65543;

 L54722: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 56)
    goto L54723;
  goto ret0;

 L54723: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54724;
    }
  goto ret0;

 L54724: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54725;
  goto ret0;

 L54725: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L54726;
    }
  goto ret0;

 L54726: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15406 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5299 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_2 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG)
    goto L65635;
 L65528: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L52792;
    }
 L65529: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L53043;
    }
  goto ret0;

 L65635: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L53394;
    }
 L65636: ATTRIBUTE_UNUSED_LABEL
  if (general_reg_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L53527;
    }
  goto L65528;

 L53394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65637;
  x2 = XEXP (x1, 0);
  goto L65636;

 L65637: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53395;
    case IOR:
      goto L53403;
    case XOR:
      goto L53411;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53395: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53396;
    }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53396: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53397;
    }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53397: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53398;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65636;

 L53398: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5010 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65636;

 L53403: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53404;
    }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53404: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53405;
    }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53405: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53406;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65636;

 L53406: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5011 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65636;

 L53411: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53412;
    }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53412: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53413;
    }
  x2 = XEXP (x1, 0);
  goto L65636;

 L53413: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53414;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65636;

 L53414: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5012 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65636;

 L53527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == NOT)
    goto L53528;
  x2 = XEXP (x1, 0);
  goto L65528;

 L53528: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == XOR)
    goto L53529;
  x2 = XEXP (x1, 0);
  goto L65528;

 L53529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L53530;
  x2 = XEXP (x1, 0);
  goto L65528;

 L53530: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_reg_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L53531;
    }
  x2 = XEXP (x1, 0);
  goto L65528;

 L53531: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53532;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65528;

 L53532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5035 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65528;

 L52792: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65640;
  x2 = XEXP (x1, 0);
  goto L65529;

 L65640: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52793;
    case PLUS:
      goto L53028;
    case MINUS:
      goto L53126;
    case NEG:
      goto L53569;
    case UNSPEC:
      goto L65646;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65529;

 L52793: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52794;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L52794: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52795;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L52795: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
   && can_create_pseudo_p ()) && 
#line 4662 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4881 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53028: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53029;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L53029: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53030;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L53030: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53031;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53031: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 5210 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_4920 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53126: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53127;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L53127: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_general_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53128;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L53128: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53129;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53129: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6151 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_4939 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53569: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53570;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L53570: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53571;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 8745 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_5045 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L65646: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65648;
  x2 = XEXP (x1, 0);
  goto L65529;

 L65648: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54787;
    case 65LL:
      goto L54794;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L54787: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54788;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L54788: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54789;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L54789: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5334 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L54794: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54795;
    }
  x2 = XEXP (x1, 0);
  goto L65529;

 L54795: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54796;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L54796: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5335 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65529;

 L53043: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65650;
  goto ret0;

 L65650: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L53044;
    case MULT:
      goto L53134;
    case AND:
      goto L53453;
    case ASHIFT:
      goto L53731;
    case LSHIFTRT:
      goto L53764;
    case ASHIFTRT:
      goto L53772;
    case CTZ:
      goto L54501;
    case CLZ:
      goto L54515;
    case POPCOUNT:
      goto L54529;
    default:
     break;
   }
  goto ret0;

 L53044: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L65660;
  goto ret0;

 L65660: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 22)
    goto L54590;
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53045;
    }
  goto ret0;

 L54590: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (tls_modbase_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L54591;
    }
  goto ret0;

 L54591: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  operands[3] = x4;
  goto L54592;

 L54592: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54593;
  goto ret0;

 L54593: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == CONST)
    goto L54594;
  goto ret0;

 L54594: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == DImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 6)
    goto L54595;
  goto ret0;

 L54595: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (tls_symbolic_operand (x5, VOIDmode))
    {
      operands[1] = x5;
      goto L54596;
    }
  goto ret0;

 L54596: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54597;
  goto ret0;

 L54597: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return gen_split_5213 (insn, operands);
    }
  goto ret0;

 L53045: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x86_64_nonmemory_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53046;
    }
  goto ret0;

 L53046: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53047;
  goto ret0;

 L53047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L65661;
  goto ret0;

 L65661: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65663;
  goto ret0;

 L65663: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L65665;
  goto ret0;

 L65665: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5505 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_avoid_lea_for_add (insn, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4922 (insn, operands);
    }
 L65666: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5516 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_lea_for_add_ok (insn, operands)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4926 (insn, operands);
    }
  goto ret0;

 L53134: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L53135;
  goto ret0;

 L53135: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L53136;
    }
  goto ret0;

 L53136: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L53137;
  goto ret0;

 L53137: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L53138;
    }
  goto ret0;

 L53138: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53139;
  goto ret0;

 L53139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6892 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed
  && true_regnum (operands[1]) == DX_REG) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_4968 (insn, operands);
    }
  goto ret0;

 L53453: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53454;
    }
  goto ret0;

 L53454: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53455;
    }
  goto ret0;

 L53455: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53456;
  goto ret0;

 L53456: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 8004 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && true_regnum (operands[0]) != true_regnum (operands[1])) && 
#line 955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_5020 (insn, operands);
    }
  goto ret0;

 L53731: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonmemory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53732;
    }
  goto ret0;

 L53732: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53733;
    }
  goto ret0;

 L53733: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53734;
  goto ret0;

 L53734: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9280 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize && flag_peephole2) ? epilogue_completed : reload_completed) && 
#line 980 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_5083 (insn, operands);
    }
  goto ret0;

 L53764: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53765;
    }
  goto ret0;

 L53765: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53766;
    }
  goto ret0;

 L53766: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53767;
  goto ret0;

 L53767: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9906 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize && flag_peephole2) ? epilogue_completed : reload_completed) && 
#line 980 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_5097 (insn, operands);
    }
  goto ret0;

 L53772: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53773;
    }
  goto ret0;

 L53773: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53774;
    }
  goto ret0;

 L53774: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53775;
  goto ret0;

 L53775: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9906 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize && flag_peephole2) ? epilogue_completed : reload_completed) && 
#line 980 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_5098 (insn, operands);
    }
  goto ret0;

 L54501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L54502;
    }
  goto ret0;

 L54502: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54503;
  goto ret0;

 L54503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && ((
#line 12480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_BMI || TARGET_GENERIC)
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)) && 
#line 12483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5191 (insn, operands);
    }
  goto ret0;

 L54515: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L54516;
    }
  goto ret0;

 L54516: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54517;
  goto ret0;

 L54517: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && ((
#line 12576 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_LZCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)) && 
#line 12579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5197 (insn, operands);
    }
  goto ret0;

 L54529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L54530;
    }
  goto ret0;

 L54530: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54531;
  goto ret0;

 L54531: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && ((
#line 12933 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_POPCNT
   && TARGET_AVOID_FALSE_DEP_FOR_BMI && optimize_function_for_speed_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)) && 
#line 12936 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5202 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_3 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case CCFPmode:
      goto L65518;
    case CCFPUmode:
      goto L65519;
    case SImode:
      goto L65534;
    case HImode:
      goto L65533;
    case SFmode:
      goto L65522;
    case DFmode:
      goto L65523;
    case DImode:
      goto L65535;
    case QImode:
      goto L65532;
    case TImode:
      goto L65531;
    case TFmode:
      goto L65540;
    case XFmode:
      goto L65541;
    case V4SImode:
      goto L65544;
    case V16SFmode:
      goto L65545;
    case V8SFmode:
      goto L65546;
    case V4SFmode:
      goto L65547;
    case V8DFmode:
      goto L65548;
    case V4DFmode:
      goto L65549;
    case V2DFmode:
      goto L65550;
    default:
      break;
    }
 L53673: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case REG:
      goto L65551;
    case PC:
      goto L53932;
    default:
     break;
   }
 L53459: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L53460;
    }
 L53467: ATTRIBUTE_UNUSED_LABEL
  if (ext_register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L53468;
    }
 L53483: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L53484;
    }
 L55192: ATTRIBUTE_UNUSED_LABEL
  if (general_reg_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L55193;
    }
  goto ret0;

 L65518: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L52256;
  goto L53673;

 L52256: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == COMPARE)
    goto L52257;
  x2 = XEXP (x1, 0);
  goto L53673;

 L52257: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L65552;
    case DFmode:
      goto L65553;
    case XFmode:
      goto L65554;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L65552: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L52294;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52294: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SFmode)
    goto L65556;
 L52258: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L52259;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L65556: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, SFmode))
    {
      operands[3] = x3;
      goto L52340;
    }
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L52295;
    }
  goto L52258;

 L52340: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L65557;
    case SImode:
      goto L65558;
    default:
      break;
    }
  goto L52258;

 L65557: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L52341;
    }
  goto L52258;

 L52341: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52342;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52343;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52343: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))) && 
#line 1583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4775 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L65558: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L52371;
    }
  goto L52258;

 L52371: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52372;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52372: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52373;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52373: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))) && 
#line 1583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4778 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52295: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52296;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52296: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52297;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52297: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1508 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1510 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4770 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52258;

 L52259: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52260;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52260: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52261;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52261: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1442 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1444 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4766 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65553: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L52303;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52303: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DFmode)
    goto L65560;
 L52267: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L52268;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L65560: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, DFmode))
    {
      operands[3] = x3;
      goto L52350;
    }
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L52304;
    }
  goto L52267;

 L52350: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L65561;
    case SImode:
      goto L65562;
    default:
      break;
    }
  goto L52267;

 L65561: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L52351;
    }
  goto L52267;

 L52351: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52352;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52352: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52353;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52353: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))) && 
#line 1583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4776 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L65562: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L52381;
    }
  goto L52267;

 L52381: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52382;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52382: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52383;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52383: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))) && 
#line 1583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4779 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52304: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52305;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52305: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52306;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52306: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1508 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1510 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4771 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52267;

 L52268: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52269;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52269: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52270;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52270: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1442 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1444 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4767 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65554: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L52285;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52285: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == XFmode)
    goto L65564;
 L52276: ATTRIBUTE_UNUSED_LABEL
  if (const0_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L52277;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L65564: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x3, XFmode))
    {
      operands[3] = x3;
      goto L52360;
    }
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L52286;
    }
  goto L52276;

 L52360: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case HImode:
      goto L65565;
    case SImode:
      goto L65566;
    default:
      break;
    }
  goto L52276;

 L65565: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L52361;
    }
  goto L52276;

 L52361: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52362;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52362: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52363;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52363: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_HIMODE_FIOP
       || optimize_function_for_size_p (cfun))) && 
#line 1583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4777 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L65566: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L52391;
    }
  goto L52276;

 L52391: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52392;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52392: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52393;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52393: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1579 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE
   && (TARGET_USE_SIMODE_FIOP
       || optimize_function_for_size_p (cfun))) && 
#line 1583 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4780 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52286: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52287;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52288;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52288: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1477 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4769 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 1);
  goto L52276;

 L52277: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52278;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52279;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52279: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1442 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1444 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4768 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65519: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L52310;
  goto L53673;

 L52310: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCFPUmode
      && GET_CODE (x2) == COMPARE)
    goto L52311;
  x2 = XEXP (x1, 0);
  goto L53673;

 L52311: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L65567;
    case DFmode:
      goto L65568;
    case XFmode:
      goto L65569;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L65567: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L52312;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L52313;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52313: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52314;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52314: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52315;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52315: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1543 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4772 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65568: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L52321;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52321: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L52322;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52322: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52323;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52323: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52324;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52324: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1543 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4773 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65569: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L52330;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52330: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L52331;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52331: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52332;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52332: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52333;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52333: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && TARGET_SAHF && !TARGET_CMOVE) && 
#line 1543 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4774 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65534: ATTRIBUTE_UNUSED_LABEL
  tem = split_1 (x0, insn);
  if (tem != 0)
    return tem;
  goto L53673;

 L65533: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65606;
 L65521: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52503;
    }
 L65526: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52778;
    }
 L65542: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L54714;
    }
  goto L53673;

 L65606: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L53346;
    }
 L65607: ATTRIBUTE_UNUSED_LABEL
  if (general_reg_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L53427;
    }
  goto L65521;

 L53346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65608;
  x2 = XEXP (x1, 0);
  goto L65607;

 L65608: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53347;
    case IOR:
      goto L53355;
    case XOR:
      goto L53363;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53347: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L53348;
    }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53348: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53349;
    }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53349: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53350;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65607;

 L53350: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5004 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65607;

 L53355: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L53356;
    }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53356: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53357;
    }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53357: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53358;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65607;

 L53358: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5005 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65607;

 L53363: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L53364;
    }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53364: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53365;
    }
  x2 = XEXP (x1, 0);
  goto L65607;

 L53365: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53366;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65607;

 L53366: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5006 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65607;

 L53427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65611;
  x2 = XEXP (x1, 0);
  goto L65521;

 L65611: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53428;
    case NOT:
      goto L53510;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65521;

 L53428: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == NOT)
    goto L53429;
  x2 = XEXP (x1, 0);
  goto L65521;

 L53429: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L53430;
  x2 = XEXP (x1, 0);
  goto L65521;

 L53430: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_reg_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L53431;
    }
  x2 = XEXP (x1, 0);
  goto L65521;

 L53431: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53432;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65521;

 L53432: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7979 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && !TARGET_BMI && reload_completed))
    {
      return gen_split_5017 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65521;

 L53510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == XOR)
    goto L53511;
  x2 = XEXP (x1, 0);
  goto L65521;

 L53511: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L53512;
  x2 = XEXP (x1, 0);
  goto L65521;

 L53512: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_reg_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L53513;
    }
  x2 = XEXP (x1, 0);
  goto L65521;

 L53513: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53514;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65521;

 L53514: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5033 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65521;

 L52503: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65613;
  x2 = XEXP (x1, 0);
  goto L65526;

 L65613: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ZERO_EXTEND:
      goto L52504;
    case PLUS:
      goto L53060;
    case AND:
      goto L53437;
    case ROTATE:
      goto L53852;
    case ROTATERT:
      goto L53860;
    case UNSPEC:
      goto L65619;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65526;

 L52504: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L52505;
    }
  x2 = XEXP (x1, 0);
  goto L65526;

 L52505: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52506;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L52506: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 3682 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
#line 3684 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4823 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53060: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L53061;
    }
  x2 = XEXP (x1, 0);
  goto L65526;

 L53061: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53062;
    }
  x2 = XEXP (x1, 0);
  goto L65526;

 L53062: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53063;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53063: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 5516 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_lea_for_add_ok (insn, operands)))
    {
      return gen_split_4924 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53437: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L53438;
    }
  x2 = XEXP (x1, 0);
  goto L65526;

 L53438: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53439;
    }
  x2 = XEXP (x1, 0);
  goto L65526;

 L53439: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53440;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53440: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8004 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && true_regnum (operands[0]) != true_regnum (operands[1])))
    {
      return gen_split_5018 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53852: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53853;
  x2 = XEXP (x1, 0);
  goto L65526;

 L53853: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L53854;
  x2 = XEXP (x1, 0);
  goto L65526;

 L53854: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53855;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53855: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10599 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
  && (TARGET_USE_XCHGB || optimize_function_for_size_p (cfun))))
    {
      return gen_split_5116 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53860: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53861;
  x2 = XEXP (x1, 0);
  goto L65526;

 L53861: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L53862;
  x2 = XEXP (x1, 0);
  goto L65526;

 L53862: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53863;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L53863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 10599 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
  && (TARGET_USE_XCHGB || optimize_function_for_size_p (cfun))))
    {
      return gen_split_5117 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L65619: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 56)
    goto L54699;
  x2 = XEXP (x1, 0);
  goto L65526;

 L54699: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54700;
    }
  x2 = XEXP (x1, 0);
  goto L65526;

 L54700: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54701;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L54701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54702;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L54702: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15397 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5296 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65526;

 L52778: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65620;
  x2 = XEXP (x1, 0);
  goto L65542;

 L65620: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52779;
    case UNSPEC:
      goto L65623;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65542;

 L52779: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52780;
    }
  x2 = XEXP (x1, 0);
  goto L65542;

 L52780: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52781;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65542;

 L52781: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 4656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && !TARGET_FISTTP
   && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
   && can_create_pseudo_p ()) && 
#line 4662 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4879 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65542;

 L65623: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65625;
  x2 = XEXP (x1, 0);
  goto L65542;

 L65625: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54759;
    case 65LL:
      goto L54766;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65542;

 L54759: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54760;
    }
  x2 = XEXP (x1, 0);
  goto L65542;

 L54760: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54761;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65542;

 L54761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5330 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65542;

 L54766: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54767;
    }
  x2 = XEXP (x1, 0);
  goto L65542;

 L54767: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54768;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65542;

 L54768: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15656 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15660 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5331 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65542;

 L54714: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 56)
    goto L54715;
  x2 = XEXP (x1, 0);
  goto L53673;

 L54715: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54716;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54716: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54717;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54717: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54718;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54718: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15406 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5298 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65522: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L52615;
    }
 L65524: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L52639;
    }
  goto L53673;

 L52615: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode)
    goto L65627;
  x2 = XEXP (x1, 0);
  goto L65524;

 L65627: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FLOAT_TRUNCATE:
      goto L52616;
    case UNSPEC:
      goto L65629;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65524;

 L52616: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case DFmode:
      goto L65630;
    case XFmode:
      goto L65631;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65524;

 L65630: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x3, DFmode))
    {
      operands[1] = x3;
      goto L52617;
    }
  x2 = XEXP (x1, 0);
  goto L65524;

 L52617: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52618;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L52618: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L52619;

 L52619: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4309 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4844 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L65631: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L52625;
    }
  x2 = XEXP (x1, 0);
  goto L65524;

 L52625: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52626;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L52626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L52627;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L52627: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4387 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && reload_completed))
    {
      return gen_split_4847 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L65629: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 47)
    goto L53642;
  x2 = XEXP (x1, 0);
  goto L65524;

 L53642: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SFmode))
    {
      operands[2] = x3;
      goto L53643;
    }
  x2 = XEXP (x1, 0);
  goto L65524;

 L53643: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L53644;
    }
  x2 = XEXP (x1, 0);
  goto L65524;

 L53644: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  operands[4] = x3;
  goto L53645;

 L53645: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  operands[5] = x3;
  goto L53646;

 L53646: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53647;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L53647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L53648;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L53648: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9109 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
    || (TARGET_SSE && (SFmode == TFmode)))
   && reload_completed))
    {
      return gen_split_5068 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65524;

 L52639: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == FLOAT_TRUNCATE)
    goto L52640;
  x2 = XEXP (x1, 0);
  goto L53673;

 L52640: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L52641;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52641: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52642;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52642: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L52643;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52643: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4396 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return gen_split_4849 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65523: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L52631;
    }
 L65525: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L52647;
    }
  goto L53673;

 L52631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode)
    goto L65632;
  x2 = XEXP (x1, 0);
  goto L65525;

 L65632: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FLOAT_TRUNCATE:
      goto L52632;
    case UNSPEC:
      goto L65634;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65525;

 L52632: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L52633;
    }
  x2 = XEXP (x1, 0);
  goto L65525;

 L52633: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52634;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65525;

 L52634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L52635;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65525;

 L52635: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4387 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && reload_completed))
    {
      return gen_split_4848 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65525;

 L65634: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 47)
    goto L53653;
  x2 = XEXP (x1, 0);
  goto L65525;

 L53653: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DFmode))
    {
      operands[2] = x3;
      goto L53654;
    }
  x2 = XEXP (x1, 0);
  goto L65525;

 L53654: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L53655;
    }
  x2 = XEXP (x1, 0);
  goto L65525;

 L53655: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  operands[4] = x3;
  goto L53656;

 L53656: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  operands[5] = x3;
  goto L53657;

 L53657: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53658;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65525;

 L53658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L53659;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65525;

 L53659: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9109 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
    || (TARGET_SSE && (DFmode == TFmode)))
   && reload_completed))
    {
      return gen_split_5069 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65525;

 L52647: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == FLOAT_TRUNCATE)
    goto L52648;
  x2 = XEXP (x1, 0);
  goto L53673;

 L52648: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L52649;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L52649: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52650;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52650: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L52651;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L52651: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4396 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387))
    {
      return gen_split_4850 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65535: ATTRIBUTE_UNUSED_LABEL
  tem = split_2 (x0, insn);
  if (tem != 0)
    return tem;
  goto L53673;

 L65532: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65667;
 L65530: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L53051;
    }
  goto L53673;

 L65667: ATTRIBUTE_UNUSED_LABEL
  if (mask_reg_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L53322;
    }
 L65668: ATTRIBUTE_UNUSED_LABEL
  if (general_reg_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L53418;
    }
  goto L65530;

 L53322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L65669;
  x2 = XEXP (x1, 0);
  goto L65668;

 L65669: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53323;
    case IOR:
      goto L53331;
    case XOR:
      goto L53339;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53323: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L53324;
    }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53324: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53325;
    }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53325: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53326;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65668;

 L53326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5001 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65668;

 L53331: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L53332;
    }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53332: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53333;
    }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53333: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53334;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65668;

 L53334: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5002 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65668;

 L53339: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (mask_reg_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L53340;
    }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53340: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (mask_reg_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53341;
    }
  x2 = XEXP (x1, 0);
  goto L65668;

 L53341: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53342;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65668;

 L53342: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7728 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5003 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65668;

 L53418: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode)
    goto L65672;
  x2 = XEXP (x1, 0);
  goto L65530;

 L65672: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53419;
    case NOT:
      goto L53501;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65530;

 L53419: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == NOT)
    goto L53420;
  x2 = XEXP (x1, 0);
  goto L65530;

 L53420: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L53421;
  x2 = XEXP (x1, 0);
  goto L65530;

 L53421: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (general_reg_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L53422;
    }
  x2 = XEXP (x1, 0);
  goto L65530;

 L53422: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53423;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65530;

 L53423: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7979 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && !TARGET_BMI && reload_completed))
    {
      return gen_split_5016 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65530;

 L53501: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == XOR)
    goto L53502;
  x2 = XEXP (x1, 0);
  goto L65530;

 L53502: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L53503;
  x2 = XEXP (x1, 0);
  goto L65530;

 L53503: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_reg_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L53504;
    }
  x2 = XEXP (x1, 0);
  goto L65530;

 L53504: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53505;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65530;

 L53505: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8458 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVX512F && reload_completed))
    {
      return gen_split_5032 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65530;

 L53051: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == PLUS)
    goto L53052;
  x2 = XEXP (x1, 0);
  goto L53673;

 L53052: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L53053;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L53053: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53054;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L53054: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53055;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L53055: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 5516 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_lea_for_add_ok (insn, operands)))
    {
      return gen_split_4923 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65531: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, TImode))
    {
      operands[0] = x2;
      goto L53143;
    }
  goto L53673;

 L53143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == TImode
      && GET_CODE (x2) == MULT)
    goto L53144;
  x2 = XEXP (x1, 0);
  goto L53673;

 L53144: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == TImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L53145;
  x2 = XEXP (x1, 0);
  goto L53673;

 L53145: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L53146;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L53146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == TImode
      && GET_CODE (x3) == ZERO_EXTEND)
    goto L53147;
  x2 = XEXP (x1, 0);
  goto L53673;

 L53147: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L53148;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L53148: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53149;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L53149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 6892 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_BMI2 && reload_completed
  && true_regnum (operands[1]) == DX_REG) && 
#line 1003 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4969 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65540: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, TFmode))
    {
      operands[0] = x2;
      goto L53663;
    }
  goto L53673;

 L53663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == TFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 4
      && XINT (x2, 1) == 47)
    goto L53664;
  x2 = XEXP (x1, 0);
  goto L53673;

 L53664: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, TFmode))
    {
      operands[2] = x3;
      goto L53665;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L53665: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, TFmode))
    {
      operands[3] = x3;
      goto L53666;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L53666: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  operands[4] = x3;
  goto L53667;

 L53667: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  operands[5] = x3;
  goto L53668;

 L53668: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53669;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L53669: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L53670;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L53670: ATTRIBUTE_UNUSED_LABEL
  if (
#line 9109 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(((SSE_FLOAT_MODE_P (TFmode) && TARGET_SSE_MATH)
    || (TARGET_SSE && (TFmode == TFmode)))
   && reload_completed))
    {
      return gen_split_5070 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65541: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L54601;
    }
  goto L53673;

 L54601: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode)
    goto L65674;
  x2 = XEXP (x1, 0);
  goto L53673;

 L65674: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == UNSPEC)
    goto L65679;
  x2 = XEXP (x1, 0);
  goto L53673;

 L65679: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65684;
  x2 = XEXP (x1, 0);
  goto L53673;

 L65684: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 66LL:
      goto L54602;
    case 60LL:
      goto L54731;
    case 61LL:
      goto L54738;
    case 62LL:
      goto L54745;
    case 63LL:
      goto L54752;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode)
    goto L65690;
  x2 = XEXP (x1, 0);
  goto L53673;

 L65690: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == FLOAT_EXTEND)
    goto L54621;
  if (register_operand (x3, XFmode))
    {
      operands[2] = x3;
      goto L54603;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54621: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65691;
    case DFmode:
      goto L65692;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L65691: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L54622;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54622: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L54623;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54623: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L54624;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54624: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 67)
    goto L54625;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54625: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L54626;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54626: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14315 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(find_regno_note (insn, REG_UNUSED, REGNO (operands[0]))
   && can_create_pseudo_p ()))
    {
      return gen_split_5225 (insn, operands);
    }
 L54648: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14327 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(find_regno_note (insn, REG_UNUSED, REGNO (operands[1]))
   && can_create_pseudo_p ()))
    {
      return gen_split_5227 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65692: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L54633;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54633: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L54634;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L54635;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 67)
    goto L54636;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54636: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (GET_MODE (x3) == XFmode
      && GET_CODE (x3) == FLOAT_EXTEND)
    goto L54637;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54637: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14315 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(find_regno_note (insn, REG_UNUSED, REGNO (operands[0]))
   && can_create_pseudo_p ()))
    {
      return gen_split_5226 (insn, operands);
    }
 L54659: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x4, operands[2])
      && 
#line 14327 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(find_regno_note (insn, REG_UNUSED, REGNO (operands[1]))
   && can_create_pseudo_p ()))
    {
      return gen_split_5228 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54603: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L54604;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L54605;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 67)
    goto L54606;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54606: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2])
      && 
#line 14279 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(find_regno_note (insn, REG_UNUSED, REGNO (operands[0]))
   && can_create_pseudo_p ()))
    {
      return gen_split_5223 (insn, operands);
    }
 L54615: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[2])
      && 
#line 14289 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(find_regno_note (insn, REG_UNUSED, REGNO (operands[1]))
   && can_create_pseudo_p ()))
    {
      return gen_split_5224 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54731: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54732;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54732: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54733;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15487 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5314 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54738: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54739;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54739: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54740;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54740: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15487 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5315 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54746;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54746: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54747;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54747: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15483 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15487 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5316 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54752: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54753;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L54753: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54754;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L54754: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 15591 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && flag_unsafe_math_optimizations
   && can_create_pseudo_p ()) && 
#line 15595 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5326 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65544: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[0] = x2;
      goto L56230;
    }
  goto L53673;

 L56230: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == SUBREG
      && XINT (x2, 1) == 0)
    goto L56231;
  x2 = XEXP (x1, 0);
  goto L53673;

 L56231: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56232;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56232: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56233;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56233: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[2] = x2;
      goto L56234;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56234: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1071 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC) && 
#line 1073 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5643 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65545: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V16SFmode))
    {
      operands[0] = x2;
      goto L56246;
    }
  goto L53673;

 L56246: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, V16SFmode))
    {
      operands[3] = x2;
      goto L56247;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V16SFmode))
    {
      operands[1] = x3;
      goto L56248;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56248: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L56249;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56249: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[2] = x2;
      goto L56250;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56250: ATTRIBUTE_UNUSED_LABEL
  if (((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)) && 
#line 1570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5727 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65546: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8SFmode))
    {
      operands[0] = x2;
      goto L56254;
    }
  goto L53673;

 L56254: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, V8SFmode))
    {
      operands[3] = x2;
      goto L56255;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56255: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8SFmode))
    {
      operands[1] = x3;
      goto L56256;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56256: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L56257;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[2] = x2;
      goto L56258;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56258: ATTRIBUTE_UNUSED_LABEL
  if (((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 216 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)) && 
#line 1570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5728 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65547: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[0] = x2;
      goto L56262;
    }
  goto L53673;

 L56262: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L56263;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56263: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4SFmode))
    {
      operands[1] = x3;
      goto L56264;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56264: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L56265;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L56266;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56266: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 1570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5729 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65548: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V8DFmode))
    {
      operands[0] = x2;
      goto L56270;
    }
  goto L53673;

 L56270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, V8DFmode))
    {
      operands[3] = x2;
      goto L56271;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56271: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V8DFmode))
    {
      operands[1] = x3;
      goto L56272;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56272: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L56273;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56273: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[2] = x2;
      goto L56274;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56274: ATTRIBUTE_UNUSED_LABEL
  if (((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F)) && 
#line 1570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5730 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65549: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4DFmode))
    {
      operands[0] = x2;
      goto L56278;
    }
  goto L53673;

 L56278: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, V4DFmode))
    {
      operands[3] = x2;
      goto L56279;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56279: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V4DFmode))
    {
      operands[1] = x3;
      goto L56280;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56280: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L56281;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56281: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[2] = x2;
      goto L56282;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56282: ATTRIBUTE_UNUSED_LABEL
  if (((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX)) && 
#line 1570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5731 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65550: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V2DFmode))
    {
      operands[0] = x2;
      goto L56286;
    }
  goto L53673;

 L56286: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L56287;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56287: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L56288;
    }
  x2 = XEXP (x1, 0);
  goto L53673;

 L56288: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L56289;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56289: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L56290;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L56290: ATTRIBUTE_UNUSED_LABEL
  if (((
#line 1568 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 217 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2)) && 
#line 1570 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_5732 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53673;

 L65551: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L53674;
    }
  goto L53459;

 L53674: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (compare_operator (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L53675;
    }
  x2 = XEXP (x1, 0);
  goto L53459;

 L53675: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case QImode:
      goto L65693;
    case HImode:
      goto L65694;
    case SImode:
      goto L65695;
    case DImode:
      goto L65696;
    default:
      break;
    }
 L55202: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == AND)
    goto L55203;
  x2 = XEXP (x1, 0);
  goto L53459;

 L65693: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L53676;
  goto L55202;

 L53676: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, QImode))
    {
      operands[3] = x4;
      goto L53677;
    }
  goto L55202;

 L53677: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53678;
  x3 = XEXP (x2, 0);
  goto L55202;

 L53678: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53679;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53679: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L53680;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == NOT)
    goto L53681;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53681: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 9201 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return gen_split_5074 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L65694: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L53687;
  goto L55202;

 L53687: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, HImode))
    {
      operands[3] = x4;
      goto L53688;
    }
  goto L55202;

 L53688: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53689;
  x3 = XEXP (x2, 0);
  goto L55202;

 L53689: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53690;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53690: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L53691;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == NOT)
    goto L53692;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53692: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 9201 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return gen_split_5075 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L65695: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L53698;
  goto L55202;

 L53698: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode)
    goto L65697;
  goto L55202;

 L65697: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L53699;
    }
 L65698: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SImode))
    {
      operands[3] = x4;
      goto L53721;
    }
  goto L55202;

 L53699: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53700;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L65698;

 L53700: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53701;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L65698;

 L53701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L53702;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L65698;

 L53702: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == NOT)
    goto L53703;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L65698;

 L53703: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3])
      && 
#line 9201 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return gen_split_5076 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  goto L65698;

 L53721: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53722;
  x3 = XEXP (x2, 0);
  goto L55202;

 L53722: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53723;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L53724;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53724: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == ZERO_EXTEND)
    goto L53725;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53725: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == NOT)
    goto L53726;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53726: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[3])
      && 
#line 9228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return gen_split_5078 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L65696: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == NOT)
    goto L53709;
  goto L55202;

 L53709: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (nonimmediate_operand (x4, DImode))
    {
      operands[3] = x4;
      goto L53710;
    }
  goto L55202;

 L53710: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53711;
  x3 = XEXP (x2, 0);
  goto L55202;

 L53711: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53712;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53712: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L53713;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == NOT)
    goto L53714;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L53714: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3])
      && (
#line 9201 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_5077 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55202;

 L55203: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (aligned_operand (x4, VOIDmode))
    {
      operands[3] = x4;
      goto L55204;
    }
  x2 = XEXP (x1, 0);
  goto L53459;

 L55204: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const_int_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L55205;
    }
  x2 = XEXP (x1, 0);
  goto L53459;

 L55205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55206;
  x2 = XEXP (x1, 0);
  goto L53459;

 L55206: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L55207;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53459;

 L55207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55208;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53459;

 L55208: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == AND)
    goto L55209;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53459;

 L55209: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[3]))
    goto L55210;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53459;

 L55210: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[4])
      && 
#line 17259 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL && reload_completed
   && optimize_insn_for_speed_p ()
   && ((GET_MODE (operands[1]) == HImode && ! TARGET_FAST_PREFIX)
       || (GET_MODE (operands[1]) == QImode && TARGET_PROMOTE_QImode))
   /* Ensure that the operand will remain sign-extended immediate.  */
   && ix86_match_ccmode (insn, INTVAL (operands[4]) >= 0 ? CCNOmode : CCZmode)))
    {
      return gen_split_5414 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53459;

 L53932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == IF_THEN_ELSE)
    goto L53933;
  goto ret0;

 L53933: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (bt_comparison_operator (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L53934;
    }
  goto ret0;

 L53934: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SImode:
      goto L65699;
    case DImode:
      goto L65700;
    default:
      break;
    }
  goto ret0;

 L65699: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x4))
    {
    case ZERO_EXTRACT:
      goto L53935;
    case AND:
      goto L54029;
    default:
     break;
   }
  goto ret0;

 L53935: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, SImode))
    {
      operands[1] = x5;
      goto L53936;
    }
  goto ret0;

 L53936: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L53937;
  goto ret0;

 L53937: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 2);
  if (GET_MODE (x5) == SImode)
    goto L65702;
  goto ret0;

 L65702: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case ZERO_EXTEND:
      goto L53938;
    case AND:
      goto L54000;
    case REG:
    case SUBREG:
      goto L65703;
    default:
      goto ret0;
   }
 L65703: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L53970;
    }
  goto ret0;

 L53938: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, QImode))
    {
      operands[2] = x6;
      goto L53939;
    }
  goto ret0;

 L53939: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53940;
  goto ret0;

 L53940: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L53941;
  goto ret0;

 L53941: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L53942;

 L53942: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L53943;
  goto ret0;

 L53943: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53944;
  goto ret0;

 L53944: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11125 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 11127 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5129 (insn, operands);
    }
  goto ret0;

 L54000: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L54001;
    }
  goto ret0;

 L54001: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (const_int_operand (x6, SImode))
    {
      operands[3] = x6;
      goto L54002;
    }
  goto ret0;

 L54002: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L54003;
  goto ret0;

 L54003: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L54004;

 L54004: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L54005;
  goto ret0;

 L54005: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54006;
  goto ret0;

 L54006: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
      == GET_MODE_BITSIZE (SImode)-1) && 
#line 11196 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5133 (insn, operands);
    }
  goto ret0;

 L53970: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53971;
  goto ret0;

 L53971: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L53972;
  goto ret0;

 L53972: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L53973;

 L53973: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L53974;
  goto ret0;

 L53974: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53975;
  goto ret0;

 L53975: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11158 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 11160 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5131 (insn, operands);
    }
  goto ret0;

 L54029: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (GET_MODE (x5) == SImode
      && GET_CODE (x5) == LSHIFTRT)
    goto L54030;
  goto ret0;

 L54030: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, SImode))
    {
      operands[1] = x6;
      goto L54031;
    }
  goto ret0;

 L54031: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (GET_MODE (x6) == QImode)
    goto L65705;
  goto ret0;

 L65705: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x6, QImode))
    {
      operands[2] = x6;
      goto L54032;
    }
 L65706: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x6) == SUBREG
      && XINT (x6, 1) == 0)
    goto L54048;
  goto ret0;

 L54032: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L54033;
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L65706;

 L54033: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54034;
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L65706;

 L54034: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L54035;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L65706;

 L54035: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L54036;

 L54036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L54037;
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L65706;

 L54037: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54038;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L65706;

 L54038: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11226 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 11228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5135 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  x4 = XEXP (x3, 0);
  x5 = XEXP (x4, 0);
  x6 = XEXP (x5, 1);
  goto L65706;

 L54048: ATTRIBUTE_UNUSED_LABEL
  x7 = XEXP (x6, 0);
  if (GET_MODE (x7) == SImode
      && GET_CODE (x7) == AND)
    goto L54049;
  goto ret0;

 L54049: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 0);
  if (register_operand (x8, SImode))
    {
      operands[2] = x8;
      goto L54050;
    }
  goto ret0;

 L54050: ATTRIBUTE_UNUSED_LABEL
  x8 = XEXP (x7, 1);
  if (const_int_operand (x8, SImode))
    {
      operands[3] = x8;
      goto L54051;
    }
  goto ret0;

 L54051: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L54052;
  goto ret0;

 L54052: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54053;
  goto ret0;

 L54053: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L54054;
  goto ret0;

 L54054: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L54055;

 L54055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L54056;
  goto ret0;

 L54056: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54057;
  goto ret0;

 L54057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 11263 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & 0x1f) == 0x1f) && 
#line 11266 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5136 (insn, operands);
    }
  goto ret0;

 L65700: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x4) == ZERO_EXTRACT)
    goto L53951;
  goto ret0;

 L53951: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, DImode))
    {
      operands[1] = x5;
      goto L53952;
    }
  goto ret0;

 L53952: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 1);
  if (x5 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L53953;
  goto ret0;

 L53953: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 2);
  if (GET_MODE (x5) == SImode)
    goto L65707;
  goto ret0;

 L65707: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x5))
    {
    case ZERO_EXTEND:
      goto L53954;
    case AND:
      goto L54016;
    case REG:
    case SUBREG:
      goto L65708;
    default:
      goto ret0;
   }
 L65708: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L53985;
    }
  goto ret0;

 L53954: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, QImode))
    {
      operands[2] = x6;
      goto L53955;
    }
  goto ret0;

 L53955: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53956;
  goto ret0;

 L53956: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L53957;
  goto ret0;

 L53957: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L53958;

 L53958: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L53959;
  goto ret0;

 L53959: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53960;
  goto ret0;

 L53960: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && ((
#line 11125 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)) && 
#line 11127 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5130 (insn, operands);
    }
  goto ret0;

 L54016: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 0);
  if (register_operand (x6, SImode))
    {
      operands[2] = x6;
      goto L54017;
    }
  goto ret0;

 L54017: ATTRIBUTE_UNUSED_LABEL
  x6 = XEXP (x5, 1);
  if (const_int_operand (x6, SImode))
    {
      operands[3] = x6;
      goto L54018;
    }
  goto ret0;

 L54018: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L54019;
  goto ret0;

 L54019: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[4] = x4;
  goto L54020;

 L54020: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L54021;
  goto ret0;

 L54021: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54022;
  goto ret0;

 L54022: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && ((
#line 11192 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
      == GET_MODE_BITSIZE (DImode)-1) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)) && 
#line 11196 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5134 (insn, operands);
    }
  goto ret0;

 L53985: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53986;
  goto ret0;

 L53986: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == LABEL_REF)
    goto L53987;
  goto ret0;

 L53987: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  operands[3] = x4;
  goto L53988;

 L53988: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (GET_CODE (x3) == PC)
    goto L53989;
  goto ret0;

 L53989: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53990;
  goto ret0;

 L53990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && ((
#line 11158 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_BT || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)) && 
#line 11160 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5132 (insn, operands);
    }
  goto ret0;

 L53460: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == AND)
    goto L53461;
  x2 = XEXP (x1, 0);
  goto L53467;

 L53461: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53462;
  x2 = XEXP (x1, 0);
  goto L53467;

 L53462: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CONST_INT
      && XWINT (x3, 0) == -65536LL)
    goto L53463;
  x2 = XEXP (x1, 0);
  goto L53467;

 L53463: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53464;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53467;

 L53464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8047 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_FAST_PREFIX && !TARGET_PARTIAL_REG_STALL)
    || optimize_function_for_size_p (cfun)))
    {
      return gen_split_5021 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53467;

 L53468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == AND)
    goto L53469;
  x2 = XEXP (x1, 0);
  goto L53483;

 L53469: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53470;
  x2 = XEXP (x1, 0);
  goto L53483;

 L53470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CONST_INT)
    goto L65710;
  x2 = XEXP (x1, 0);
  goto L53483;

 L65710: ATTRIBUTE_UNUSED_LABEL
  if ((int) XWINT (x3, 0) == XWINT (x3, 0))
    switch ((int) XWINT (x3, 0))
      {
      case -256LL:
        goto L53471;
      case -65281LL:
        goto L53479;
      default:
        break;
      }
  x2 = XEXP (x1, 0);
  goto L53483;

 L53471: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53472;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53483;

 L53472: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8057 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && reload_completed))
    {
      return gen_split_5022 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53483;

 L53479: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53480;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53483;

 L53480: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8067 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && reload_completed))
    {
      return gen_split_5023 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53483;

 L53484: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case AND:
      goto L53485;
    case IOR:
      goto L53537;
    case XOR:
      goto L53545;
    case ASHIFT:
      goto L53756;
    case NEG:
      goto L55222;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53485: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53486;
    }
 L53493: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53494;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53486: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53487;
    }
  x3 = XEXP (x2, 0);
  goto L53493;

 L53487: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53488;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L53493;

 L53488: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8277 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && QI_REG_P (operands[0])
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    && !(~INTVAL (operands[2]) & ~(255 << 8))
    && GET_MODE (operands[0]) != QImode))
    {
      return gen_split_5024 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L53493;

 L53494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53495;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53495: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53496;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8300 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && ANY_QI_REG_P (operands[0])
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    && !(~INTVAL (operands[2]) & ~255)
    && !(INTVAL (operands[2]) & 128)
    && GET_MODE (operands[0]) != QImode))
    {
      return gen_split_5025 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53537: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53538;
    }
 L53553: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53554;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53539;
    }
  x3 = XEXP (x2, 0);
  goto L53553;

 L53539: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53540;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L53553;

 L53540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && QI_REG_P (operands[0])
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    && !(INTVAL (operands[2]) & ~(255 << 8))
    && GET_MODE (operands[0]) != QImode))
    {
      return gen_split_5036 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L53553;

 L53554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53555;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53555: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53556;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8668 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && ANY_QI_REG_P (operands[0])
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    && !(INTVAL (operands[2]) & ~255)
    && (INTVAL (operands[2]) & 128)
    && GET_MODE (operands[0]) != QImode))
    {
      return gen_split_5038 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53545: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53546;
    }
 L53561: ATTRIBUTE_UNUSED_LABEL
  if (general_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53562;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53547;
    }
  x3 = XEXP (x2, 0);
  goto L53561;

 L53547: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53548;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L53561;

 L53548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && QI_REG_P (operands[0])
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    && !(INTVAL (operands[2]) & ~(255 << 8))
    && GET_MODE (operands[0]) != QImode))
    {
      return gen_split_5037 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L53561;

 L53562: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53563;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53563: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53564;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8668 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && ANY_QI_REG_P (operands[0])
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
    && !(INTVAL (operands[2]) & ~255)
    && (INTVAL (operands[2]) & 128)
    && GET_MODE (operands[0]) != QImode))
    {
      return gen_split_5039 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53756: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53757;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53757: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53758;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L53758: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53759;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L53759: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 9687 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(GET_MODE (operands[0]) == GET_MODE (operands[1])
   && reload_completed
   && true_regnum (operands[0]) != true_regnum (operands[1])))
    {
      return gen_split_5088 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L55222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L55223;
    }
  x2 = XEXP (x1, 0);
  goto L55192;

 L55223: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55224;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L55224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17307 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL && reload_completed
   && (GET_MODE (operands[0]) == HImode
       || (GET_MODE (operands[0]) == QImode
	   && (TARGET_PROMOTE_QImode
	       || optimize_insn_for_size_p ())))))
    {
      return gen_split_5416 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L55192;

 L55193: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (promotable_binary_operator (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L55194;
    }
  goto ret0;

 L55194: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (general_reg_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L55195;
    }
  goto ret0;

 L55195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (aligned_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L55196;
    }
  goto ret0;

 L55196: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55197;
  goto ret0;

 L55197: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17228 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL && reload_completed
   && ((GET_MODE (operands[0]) == HImode
	&& ((optimize_function_for_speed_p (cfun) && !TARGET_FAST_PREFIX)
            /* ??? next two lines just !satisfies_constraint_K (...) */
	    || !CONST_INT_P (operands[2])
	    || satisfies_constraint_K (operands[2])))
       || (GET_MODE (operands[0]) == QImode
	   && (TARGET_PROMOTE_QImode || optimize_function_for_size_p (cfun))))))
    {
      return gen_split_5413 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_4 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L52510;
    }
 L65713: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L52553;
    }
 L65718: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L52768;
    }
 L65723: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L56795;
    }
  goto ret0;

 L52510: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == SIGN_EXTEND)
    goto L52511;
  x2 = XEXP (x1, 0);
  goto L65713;

 L52511: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52512;
    }
  x2 = XEXP (x1, 0);
  goto L65713;

 L52512: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52513;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65713;

 L52513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L52514;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65713;

 L52514: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52515;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65713;

 L52515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52516;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65713;

 L52516: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3753 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4825 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65713;

 L52553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65728;
  x2 = XEXP (x1, 0);
  goto L65718;

 L65728: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case SIGN_EXTEND:
      goto L52554;
    case FIX:
      goto L52739;
    case DIV:
      goto L53167;
    case UDIV:
      goto L53234;
    case ROTATE:
      goto L53814;
    case ROTATERT:
      goto L53825;
    case UNSPEC:
      goto L65735;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65718;

 L52554: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52555;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L52555: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52556;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L52557;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52557: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52558;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52558: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52559;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52559: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3821 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4828 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52739: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52740;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L52740: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52741;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52742;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52742: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52743;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52743: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L52744;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52744: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4633 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4875 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53167: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53168;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53168: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L53169;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53169: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53170;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53170: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L53171;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53171: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MOD)
    goto L53172;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53172: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53173;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53173: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53174;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53174: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53175;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 7111 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_8BIT_IDIV
   && TARGET_QIMODE_MATH
   && can_create_pseudo_p ()
   && !optimize_insn_for_size_p ()) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4981 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53234: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L53235;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53235: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L53236;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53236: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53237;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53237: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L53238;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53238: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UMOD)
    goto L53239;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53240;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53240: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53241;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53241: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53242;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53242: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 7284 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_8BIT_IDIV
   && TARGET_QIMODE_MATH
   && can_create_pseudo_p ()
   && !optimize_insn_for_size_p ()) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4989 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53814: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53815;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53815: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53816;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53816: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53817;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L53818;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53818: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53819;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L53820;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53820: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10365 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_5112 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53825: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53826;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53826: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_1_to_31_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53827;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L53827: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53828;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53828: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L53829;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53829: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53830;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L53831;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L53831: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 10393 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      return gen_split_5113 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L65735: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 56)
    goto L54669;
  x2 = XEXP (x1, 0);
  goto L65718;

 L54669: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54670;
    }
  x2 = XEXP (x1, 0);
  goto L65718;

 L54670: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54671;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L54671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L54672;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L54672: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54673;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L54673: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L54674;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L54674: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15340 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5292 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65718;

 L52768: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65736;
  x2 = XEXP (x1, 0);
  goto L65723;

 L65736: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52769;
    case UNSPEC:
      goto L65739;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65723;

 L52769: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52770;
    }
  x2 = XEXP (x1, 0);
  goto L65723;

 L52770: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52771;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L52771: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52772;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L52772: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52773;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L52773: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L52774;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L52774: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4643 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4878 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L65739: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65741;
  x2 = XEXP (x1, 0);
  goto L65723;

 L65741: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 56LL:
      goto L54679;
    case 200LL:
      goto L56806;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65723;

 L54679: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54680;
    }
  x2 = XEXP (x1, 0);
  goto L65723;

 L54680: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54681;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L54681: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L54682;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L54682: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54683;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L54683: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L54684;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L54684: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15351 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5293 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L56806: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56807;
    }
  x2 = XEXP (x1, 0);
  goto L65723;

 L56807: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56808;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L56808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L56809;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L56809: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L56810;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L56810: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L56811;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L56811: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 268 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!TARGET_64BIT && (TARGET_80387 || TARGET_SSE)) && 
#line 270 "../../gcc-5.1.0/gcc/config/i386/sync.md"
( reload_completed)))
    {
      return gen_split_7215 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65723;

 L56795: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 199)
    goto L56796;
  goto ret0;

 L56796: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56797;
    }
  goto ret0;

 L56797: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56798;
  goto ret0;

 L56798: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L56799;
    }
  goto ret0;

 L56799: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L56800;
  goto ret0;

 L56800: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L56801;
    }
  goto ret0;

 L56801: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 180 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(!TARGET_64BIT && (TARGET_80387 || TARGET_SSE)) && 
#line 182 "../../gcc-5.1.0/gcc/config/i386/sync.md"
( reload_completed)))
    {
      return gen_split_7210 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_5 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52729;
    case DIV:
      goto L53154;
    case UDIV:
      goto L53221;
    case FFS:
      goto L54485;
    case UNSPEC:
      goto L65752;
    default:
     break;
   }
  goto ret0;

 L52729: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52730;
    }
  goto ret0;

 L52730: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52731;
  goto ret0;

 L52731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52732;
    }
  goto ret0;

 L52732: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52733;
  goto ret0;

 L52733: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L52734;
    }
  goto ret0;

 L52734: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4633 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4874 (insn, operands);
    }
  goto ret0;

 L53154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53155;
    }
  goto ret0;

 L53155: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L53156;
    }
  goto ret0;

 L53156: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53157;
  goto ret0;

 L53157: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L53158;
    }
  goto ret0;

 L53158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MOD)
    goto L53159;
  goto ret0;

 L53159: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53160;
  goto ret0;

 L53160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53161;
  goto ret0;

 L53161: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53162;
  goto ret0;

 L53162: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L65754;
  goto ret0;

 L65754: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65756;
  goto ret0;

 L65756: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L65758;
  goto ret0;

 L65758: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7111 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_8BIT_IDIV
   && TARGET_QIMODE_MATH
   && can_create_pseudo_p ()
   && !optimize_insn_for_size_p ()))
    {
      return gen_split_4980 (insn, operands);
    }
 L65759: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7162 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4984 (insn, operands);
    }
  goto ret0;

 L53221: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53222;
    }
  goto ret0;

 L53222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L53223;
    }
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L53290;
    }
  goto ret0;

 L53223: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53224;
  goto ret0;

 L53224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L53225;
    }
  goto ret0;

 L53225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L53226;
  goto ret0;

 L53226: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53227;
  goto ret0;

 L53227: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53228;
  goto ret0;

 L53228: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53229;
  goto ret0;

 L53229: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L65760;
  goto ret0;

 L65760: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L65762;
  goto ret0;

 L65762: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L65764;
  goto ret0;

 L65764: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7284 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_8BIT_IDIV
   && TARGET_QIMODE_MATH
   && can_create_pseudo_p ()
   && !optimize_insn_for_size_p ()))
    {
      return gen_split_4988 (insn, operands);
    }
 L65765: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7322 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4992 (insn, operands);
    }
  goto ret0;

 L53290: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53291;
  goto ret0;

 L53291: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L53292;
    }
  goto ret0;

 L53292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L53293;
  goto ret0;

 L53293: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53294;
  goto ret0;

 L53294: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53295;
  goto ret0;

 L53295: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53296;
  goto ret0;

 L53296: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 7343 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(IN_RANGE (INTVAL (operands[3]), 2, HOST_WIDE_INT_UC (0x80000000))
   && (UINTVAL (operands[3]) & (UINTVAL (operands[3]) - 1)) == 0) && 
#line 7346 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4993 (insn, operands);
    }
  goto ret0;

 L54485: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L54486;
    }
  goto ret0;

 L54486: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54487;
  goto ret0;

 L54487: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L54488;
    }
  goto ret0;

 L54488: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54489;
  goto ret0;

 L54489: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 12414 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_CMOVE) && 
#line 12416 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5187 (insn, operands);
    }
  goto ret0;

 L65752: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x2, 0))
    {
    case 5:
      goto L65766;
    case 3:
      goto L65767;
    default:
      break;
    }
  goto ret0;

 L65766: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 121)
    goto L56593;
  goto ret0;

 L56593: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L56594;
    }
  goto ret0;

 L56594: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (register_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L56595;
    }
  goto ret0;

 L56595: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16QImode)
    goto L65769;
  goto ret0;

 L65769: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L56621;
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[4] = x3;
      goto L56596;
    }
  goto ret0;

 L56621: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, V16QImode))
    {
      operands[4] = x4;
      goto L56622;
    }
  goto ret0;

 L56622: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L56623;
    }
  goto ret0;

 L56623: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[6] = x3;
      goto L56624;
    }
  goto ret0;

 L56624: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L56625;
  goto ret0;

 L56625: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L56626;
    }
  goto ret0;

 L56626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L56627;
  goto ret0;

 L56627: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56628;
  goto ret0;

 L56628: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L56629;
  goto ret0;

 L56629: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L56630;
  goto ret0;

 L56630: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[4]))
    goto L56631;
  goto ret0;

 L56631: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L56632;
  goto ret0;

 L56632: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6]))
    goto L56633;
  goto ret0;

 L56633: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L56634;
  goto ret0;

 L56634: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56635;
  goto ret0;

 L56635: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L56636;
  goto ret0;

 L56636: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56637;
  goto ret0;

 L56637: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L56638;
  goto ret0;

 L56638: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L56639;
  goto ret0;

 L56639: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[4]))
    goto L56640;
  goto ret0;

 L56640: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L56641;
  goto ret0;

 L56641: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6])
      && (
#line 14770 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()) && 
#line 14773 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( 1)))
    {
      return gen_split_6936 (insn, operands);
    }
  goto ret0;

 L56596: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (register_operand (x3, SImode))
    {
      operands[5] = x3;
      goto L56597;
    }
  goto ret0;

 L56597: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[6] = x3;
      goto L56598;
    }
  goto ret0;

 L56598: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L56599;
  goto ret0;

 L56599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L56600;
    }
  goto ret0;

 L56600: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L56601;
  goto ret0;

 L56601: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56602;
  goto ret0;

 L56602: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L56603;
  goto ret0;

 L56603: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L56604;
  goto ret0;

 L56604: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L56605;
  goto ret0;

 L56605: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6]))
    goto L56606;
  goto ret0;

 L56606: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L56607;
  goto ret0;

 L56607: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56608;
  goto ret0;

 L56608: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 5
      && XINT (x2, 1) == 121)
    goto L56609;
  goto ret0;

 L56609: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56610;
  goto ret0;

 L56610: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L56611;
  goto ret0;

 L56611: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L56612;
  goto ret0;

 L56612: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (rtx_equal_p (x3, operands[5]))
    goto L56613;
  goto ret0;

 L56613: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (rtx_equal_p (x3, operands[6])
      && (
#line 14707 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()) && 
#line 14710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( 1)))
    {
      return gen_split_6935 (insn, operands);
    }
  goto ret0;

 L65767: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 1) == 122)
    goto L56646;
  goto ret0;

 L56646: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, V16QImode))
    {
      operands[2] = x3;
      goto L56647;
    }
  goto ret0;

 L56647: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == V16QImode)
    goto L65771;
  goto ret0;

 L65771: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L56667;
  if (nonimmediate_operand (x3, V16QImode))
    {
      operands[3] = x3;
      goto L56648;
    }
  goto ret0;

 L56667: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, V16QImode))
    {
      operands[3] = x4;
      goto L56668;
    }
  goto ret0;

 L56668: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L56669;
    }
  goto ret0;

 L56669: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L56670;
  goto ret0;

 L56670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L56671;
    }
  goto ret0;

 L56671: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L56672;
  goto ret0;

 L56672: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56673;
  goto ret0;

 L56673: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L56674;
  goto ret0;

 L56674: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[3]))
    goto L56675;
  goto ret0;

 L56675: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L56676;
  goto ret0;

 L56676: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L56677;
  goto ret0;

 L56677: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56678;
  goto ret0;

 L56678: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L56679;
  goto ret0;

 L56679: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56680;
  goto ret0;

 L56680: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (GET_MODE (x3) == V16QImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 1
      && XINT (x3, 1) == 104)
    goto L56681;
  goto ret0;

 L56681: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (rtx_equal_p (x4, operands[3]))
    goto L56682;
  goto ret0;

 L56682: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4])
      && (
#line 14964 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()) && 
#line 14967 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( 1)))
    {
      return gen_split_6938 (insn, operands);
    }
  goto ret0;

 L56648: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (const_0_to_255_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L56649;
    }
  goto ret0;

 L56649: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L56650;
  goto ret0;

 L56650: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L56651;
    }
  goto ret0;

 L56651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == V16QImode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L56652;
  goto ret0;

 L56652: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56653;
  goto ret0;

 L56653: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L56654;
  goto ret0;

 L56654: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4]))
    goto L56655;
  goto ret0;

 L56655: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == SET)
    goto L56656;
  goto ret0;

 L56656: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56657;
  goto ret0;

 L56657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 3
      && XINT (x2, 1) == 122)
    goto L56658;
  goto ret0;

 L56658: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L56659;
  goto ret0;

 L56659: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L56660;
  goto ret0;

 L56660: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (rtx_equal_p (x3, operands[4])
      && (
#line 14910 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_2
   && can_create_pseudo_p ()) && 
#line 14913 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( 1)))
    {
      return gen_split_6937 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_6 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case DImode:
      goto L65712;
    case HImode:
      goto L65714;
    case SImode:
      goto L65715;
    case SFmode:
      goto L65719;
    case DFmode:
      goto L65720;
    case XFmode:
      goto L65721;
    case CCmode:
      goto L65722;
    default:
      break;
    }
 L53574: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case REG:
      goto L65724;
    case PC:
      goto L54061;
    default:
     break;
   }
 L53583: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L53584;
    }
 L53592: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L65725;
    case DFmode:
      goto L65726;
    case XFmode:
      goto L65727;
    default:
      break;
    }
  goto ret0;

 L65712: ATTRIBUTE_UNUSED_LABEL
  tem = split_4 (x0, insn);
  if (tem != 0)
    return tem;
  goto L53574;

 L65714: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52718;
    }
 L65716: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52748;
    }
  goto L53574;

 L52718: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65743;
  x2 = XEXP (x1, 0);
  goto L65716;

 L65743: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52719;
    case DIV:
      goto L53195;
    case UDIV:
      goto L53262;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65716;

 L52719: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52720;
    }
  x2 = XEXP (x1, 0);
  goto L65716;

 L52720: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52721;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L52721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52722;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L52722: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52723;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L52723: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L52724;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L52724: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4633 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4873 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53195: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53196;
    }
  x2 = XEXP (x1, 0);
  goto L65716;

 L53196: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L53197;
    }
  x2 = XEXP (x1, 0);
  goto L65716;

 L53197: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53198;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53198: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L53199;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53199: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MOD)
    goto L53200;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53200: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53201;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53201: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53202;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53202: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53203;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53203: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 7162 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH)))
    {
      return gen_split_4983 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53262: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L53263;
    }
  x2 = XEXP (x1, 0);
  goto L65716;

 L53263: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L53264;
    }
  x2 = XEXP (x1, 0);
  goto L65716;

 L53264: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53265;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53265: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L53266;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53266: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == UMOD)
    goto L53267;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53267: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53268;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53268: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53269;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53269: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53270;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L53270: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 7322 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 976 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_HIMODE_MATH)))
    {
      return gen_split_4991 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65716;

 L52748: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == FIX)
    goto L52749;
  x2 = XEXP (x1, 0);
  goto L53574;

 L52749: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52750;
    }
  x2 = XEXP (x1, 0);
  goto L53574;

 L52750: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52751;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52751: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52752;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52752: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52753;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52753: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L52754;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52754: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4643 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4876 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L65715: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52728;
    }
 L65717: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52758;
    }
  goto L53574;

 L52728: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65746;
  x2 = XEXP (x1, 0);
  goto L65717;

 L65746: ATTRIBUTE_UNUSED_LABEL
  tem = split_5 (x0, insn);
  if (tem != 0)
    return tem;
  x2 = XEXP (x1, 0);
  goto L65717;

 L52758: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == FIX)
    goto L52759;
  x2 = XEXP (x1, 0);
  goto L53574;

 L52759: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52760;
    }
  x2 = XEXP (x1, 0);
  goto L53574;

 L52760: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52761;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52761: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52762;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52762: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52763;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52763: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L52764;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52764: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4643 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4877 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L65719: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L52989;
    }
  goto L53574;

 L52989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == UNSIGNED_FLOAT)
    goto L52990;
  x2 = XEXP (x1, 0);
  goto L53574;

 L52990: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L52991;
    }
  x2 = XEXP (x1, 0);
  goto L53574;

 L52991: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52992;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52992: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L52993;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52993: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52994;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52994: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52995;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L52995: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5092 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT
   && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC) && 
#line 5096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4908 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L65720: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L52999;
    }
  goto L53574;

 L52999: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == UNSIGNED_FLOAT)
    goto L53000;
  x2 = XEXP (x1, 0);
  goto L53574;

 L53000: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53001;
    }
  x2 = XEXP (x1, 0);
  goto L53574;

 L53001: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53002;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53002: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L53003;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53003: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53004;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53004: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L53005;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53005: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5092 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT
   && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC) && 
#line 5096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4909 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L65721: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L53009;
    }
  goto L53574;

 L53009: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == UNSIGNED_FLOAT)
    goto L53010;
  x2 = XEXP (x1, 0);
  goto L53574;

 L53010: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L53011;
    }
  x2 = XEXP (x1, 0);
  goto L53574;

 L53011: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53012;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53012: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L53013;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53013: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53014;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L53015;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L53015: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5092 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT
   && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC) && 
#line 5096 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4910 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L65722: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54547;
  goto L53574;

 L54547: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 27)
    goto L54548;
  x2 = XEXP (x1, 0);
  goto L53574;

 L54548: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L54549;
    }
  x2 = XEXP (x1, 0);
  goto L53574;

 L54549: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54550;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L54550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L54551;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L54551: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54552;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L54552: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L54553;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L54553: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13141 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT) && 
#line 13143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5207 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53574;

 L65724: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L53575;
    }
  goto L53583;

 L53575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L53576;
    }
  x2 = XEXP (x1, 0);
  goto L53583;

 L53576: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53577;
  x2 = XEXP (x1, 0);
  goto L53583;

 L53577: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L53578;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53583;

 L53578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L53579;

 L53579: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53580;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53583;

 L53580: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8905 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5057 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53583;

 L54061: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == IF_THEN_ELSE)
    goto L54062;
  x2 = XEXP (x1, 0);
  goto L53592;

 L54062: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_fp_comparison_operator (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L54063;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54063: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65772;
    case DFmode:
      goto L65773;
    case XFmode:
      goto L65774;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L65772: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L54064;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54064: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L54065;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54065: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54066;

 L54066: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[4] = x3;
  goto L54067;

 L54067: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54068;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54068: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54069;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54069: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54070;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54070: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11396 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5137 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L65773: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L54077;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54077: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L54078;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54078: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54079;

 L54079: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[4] = x3;
  goto L54080;

 L54080: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54081;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54082;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54082: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54083;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11396 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5138 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L65774: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, XFmode))
    {
      operands[1] = x4;
      goto L54090;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54090: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonimmediate_operand (x4, XFmode))
    {
      operands[2] = x4;
      goto L54091;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L54091: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54092;

 L54092: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[4] = x3;
  goto L54093;

 L54093: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54094;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54095;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54095: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54096;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L54096: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 11396 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5139 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L53584: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L53585;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L53585: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53586;
    }
  x2 = XEXP (x1, 0);
  goto L53592;

 L53586: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L53587;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L53587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L53588;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L53588: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53589;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L53589: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && SSE_REG_P (operands[0])))
    {
      return gen_split_5058 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L53592;

 L65725: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L53593;
    }
  goto ret0;

 L53593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, SFmode))
    {
      operands[1] = x2;
      goto L53594;
    }
  goto ret0;

 L53594: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53595;
  goto ret0;

 L53595: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L53596;
  goto ret0;

 L53596: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L53597;

 L53597: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53598;
  goto ret0;

 L53598: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8937 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5059 (insn, operands);
    }
  goto ret0;

 L65726: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L53602;
    }
  goto ret0;

 L53602: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, DFmode))
    {
      operands[1] = x2;
      goto L53603;
    }
  goto ret0;

 L53603: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53604;
  goto ret0;

 L53604: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L53605;
  goto ret0;

 L53605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L53606;

 L53606: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53607;
  goto ret0;

 L53607: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8961 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5060 (insn, operands);
    }
  goto ret0;

 L65727: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L53611;
    }
  goto ret0;

 L53611: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (absneg_operator (x2, XFmode))
    {
      operands[1] = x2;
      goto L53612;
    }
  goto ret0;

 L53612: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L53613;
  goto ret0;

 L53613: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L53614;
  goto ret0;

 L53614: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L53615;

 L53615: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L53616;
  goto ret0;

 L53616: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 8999 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5061 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_7 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52655;
    }
 L65778: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L52863;
    }
  goto ret0;

 L52655: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65783;
  x2 = XEXP (x1, 0);
  goto L65778;

 L65783: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case UNSIGNED_FIX:
      goto L52656;
    case FIX:
      goto L52840;
    case DIV:
      goto L53180;
    case UDIV:
      goto L53247;
    case PLUS:
      goto L54558;
    case UNSPEC:
      goto L65790;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65778;

 L52656: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  switch (GET_MODE (x3))
    {
    case SFmode:
      goto L65792;
    case DFmode:
      goto L65793;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L65792: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SFmode))
    {
      operands[3] = x3;
      goto L52657;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L52657: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52658;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52658: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[4] = x2;
      goto L52659;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52659: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52660;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52660: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L52661;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52661: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52662;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52662: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SFmode))
    {
      operands[2] = x2;
      goto L52663;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52663: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   && optimize_function_for_speed_p (cfun)) && 
#line 4525 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4862 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L65793: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DFmode))
    {
      operands[3] = x3;
      goto L52669;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L52669: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52670;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52670: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[4] = x2;
      goto L52671;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52671: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52672;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52672: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L52673;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52673: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52674;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52674: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V2DFmode))
    {
      operands[2] = x2;
      goto L52675;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52675: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4522 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   && optimize_function_for_speed_p (cfun)) && 
#line 4525 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4863 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52840: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52841;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L52841: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52842;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52842: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52843;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52843: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L52844;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52844: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L52845;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52845: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52846;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52846: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L52847;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52847: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4774 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4885 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53180: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53181;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L53181: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L53182;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L53182: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53183;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53183: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L53184;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53184: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MOD)
    goto L53185;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53185: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53186;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53186: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53187;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53187: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 34)
    goto L53188;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53188: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53189;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53189: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L53190;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7128 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4982 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53247: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L53248;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L53248: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonimmediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L53249;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L53249: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == SET)
    goto L53250;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53250: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L53251;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53251: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == UMOD)
    goto L53252;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53252: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L53253;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53253: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[3]))
    goto L53254;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53254: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 34)
    goto L53255;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53255: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53256;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53256: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L53257;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L53257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 7301 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4990 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54558: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC
      && XVECLEN (x3, 0) == 3
      && XINT (x3, 1) == 21)
    goto L54559;
  x2 = XEXP (x1, 0);
  goto L65778;

 L54559: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (register_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L54560;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L54560: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (constant_call_address_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L54561;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L54561: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 2);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54562;
  x2 = XEXP (x1, 0);
  goto L65778;

 L54562: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == CONST)
    goto L54563;
  x2 = XEXP (x1, 0);
  goto L65778;

 L54563: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == UNSPEC
      && XVECLEN (x4, 0) == 1
      && XINT (x4, 1) == 6)
    goto L54564;
  x2 = XEXP (x1, 0);
  goto L65778;

 L54564: ATTRIBUTE_UNUSED_LABEL
  x5 = XVECEXP (x4, 0, 0);
  if (tls_symbolic_operand (x5, VOIDmode))
    {
      operands[3] = x5;
      goto L54565;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L54565: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54566;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54566: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L54567;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54567: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54568;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54568: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[5] = x2;
      goto L54569;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54569: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54570;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      return gen_split_5210 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L65790: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65794;
  x2 = XEXP (x1, 0);
  goto L65778;

 L65794: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54881;
    case 65LL:
      goto L54893;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L54881: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54882;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L54882: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54883;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54884;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54884: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54885;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54885: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54886;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54886: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54887;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54887: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L54888;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54888: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15777 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5342 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54893: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54894;
    }
  x2 = XEXP (x1, 0);
  goto L65778;

 L54894: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54895;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54895: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54896;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54896: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54897;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54897: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54898;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54898: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54899;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L54900;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L54900: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15777 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5343 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65778;

 L52863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode)
    goto L65796;
  goto ret0;

 L65796: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52864;
    case UNSPEC:
      goto L65799;
    default:
     break;
   }
  goto ret0;

 L52864: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52865;
    }
  goto ret0;

 L52865: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52866;
  goto ret0;

 L52866: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52867;
    }
  goto ret0;

 L52867: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L52868;
  goto ret0;

 L52868: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L52869;
    }
  goto ret0;

 L52869: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52870;
  goto ret0;

 L52870: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L52871;
    }
  goto ret0;

 L52871: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4786 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4887 (insn, operands);
    }
  goto ret0;

 L65799: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65801;
  goto ret0;

 L65801: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54929;
    case 65LL:
      goto L54941;
    default:
      break;
    }
  goto ret0;

 L54929: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54930;
    }
  goto ret0;

 L54930: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54931;
  goto ret0;

 L54931: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54932;
    }
  goto ret0;

 L54932: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54933;
  goto ret0;

 L54933: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54934;
    }
  goto ret0;

 L54934: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54935;
  goto ret0;

 L54935: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L54936;
    }
  goto ret0;

 L54936: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15791 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5346 (insn, operands);
    }
  goto ret0;

 L54941: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54942;
    }
  goto ret0;

 L54942: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54943;
  goto ret0;

 L54943: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54944;
    }
  goto ret0;

 L54944: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54945;
  goto ret0;

 L54945: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54946;
    }
  goto ret0;

 L54946: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54947;
  goto ret0;

 L54947: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[4] = x2;
      goto L54948;
    }
  goto ret0;

 L54948: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15791 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5347 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_8 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  if (ix86_swapped_fp_comparison_operator (x3, CCFPmode))
    {
      operands[0] = x3;
      goto L54150;
    }
 L54101: ATTRIBUTE_UNUSED_LABEL
  if (ix86_fp_comparison_operator (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L54102;
    }
  goto ret0;

 L54150: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65823;
    case DFmode:
      goto L65824;
    case XFmode:
      goto L65825;
    default:
      break;
    }
  goto L54101;

 L65823: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x4, SFmode))
    {
      operands[1] = x4;
      goto L54151;
    }
  goto L54101;

 L54151: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case HImode:
      goto L65826;
    case SImode:
      goto L65827;
    default:
      break;
    }
  goto L54101;

 L65826: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L54152;
    }
  goto L54101;

 L54152: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SFmode))
    {
      operands[3] = x4;
      goto L54153;
    }
  goto L54101;

 L54153: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[4] = x3;
  goto L54154;

 L54154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[5] = x3;
  goto L54155;

 L54155: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54156;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54156: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54157;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54157: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54158;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54159;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54159: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54160;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54160: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L54161;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54161: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5143 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L65827: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L54203;
    }
  goto L54101;

 L54203: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, SFmode))
    {
      operands[3] = x4;
      goto L54204;
    }
  goto L54101;

 L54204: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[4] = x3;
  goto L54205;

 L54205: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[5] = x3;
  goto L54206;

 L54206: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54207;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54208;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54208: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54209;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54209: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54210;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54210: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54211;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54211: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L54212;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54212: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5146 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L65824: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x4, DFmode))
    {
      operands[1] = x4;
      goto L54168;
    }
  goto L54101;

 L54168: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case HImode:
      goto L65828;
    case SImode:
      goto L65829;
    default:
      break;
    }
  goto L54101;

 L65828: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L54169;
    }
  goto L54101;

 L54169: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, DFmode))
    {
      operands[3] = x4;
      goto L54170;
    }
  goto L54101;

 L54170: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[4] = x3;
  goto L54171;

 L54171: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[5] = x3;
  goto L54172;

 L54172: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54173;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54173: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54174;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54174: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54175;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54175: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54176;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54176: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54177;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54177: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L54178;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54178: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5144 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L65829: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L54220;
    }
  goto L54101;

 L54220: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, DFmode))
    {
      operands[3] = x4;
      goto L54221;
    }
  goto L54101;

 L54221: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[4] = x3;
  goto L54222;

 L54222: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[5] = x3;
  goto L54223;

 L54223: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54224;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54225;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54225: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54226;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54226: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54227;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54227: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54228;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L54229;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54229: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5147 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L65825: ATTRIBUTE_UNUSED_LABEL
  if (float_operator (x4, XFmode))
    {
      operands[1] = x4;
      goto L54185;
    }
  goto L54101;

 L54185: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  switch (GET_MODE (x5))
    {
    case HImode:
      goto L65830;
    case SImode:
      goto L65831;
    default:
      break;
    }
  goto L54101;

 L65830: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x5, HImode))
    {
      operands[2] = x5;
      goto L54186;
    }
  goto L54101;

 L54186: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, XFmode))
    {
      operands[3] = x4;
      goto L54187;
    }
  goto L54101;

 L54187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[4] = x3;
  goto L54188;

 L54188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[5] = x3;
  goto L54189;

 L54189: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54190;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54190: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54191;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54191: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54192;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54192: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54193;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54193: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54194;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54194: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L54195;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54195: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5145 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L65831: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x5, SImode))
    {
      operands[2] = x5;
      goto L54237;
    }
  goto L54101;

 L54237: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (register_operand (x4, XFmode))
    {
      operands[3] = x4;
      goto L54238;
    }
  goto L54101;

 L54238: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[4] = x3;
  goto L54239;

 L54239: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[5] = x3;
  goto L54240;

 L54240: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54241;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54241: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54242;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54242: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54243;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54243: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54244;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54244: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54245;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54245: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[6] = x2;
      goto L54246;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54246: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11475 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5148 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L54101;

 L54102: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  switch (GET_MODE (x4))
    {
    case SFmode:
      goto L65832;
    case DFmode:
      goto L65833;
    case XFmode:
      goto L65834;
    default:
      break;
    }
  goto ret0;

 L65832: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, SFmode))
    {
      operands[1] = x4;
      goto L54103;
    }
  goto ret0;

 L54103: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, SFmode))
    {
      operands[2] = x4;
      goto L54104;
    }
  goto ret0;

 L54104: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54105;

 L54105: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[4] = x3;
  goto L54106;

 L54106: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54107;
  goto ret0;

 L54107: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54108;
  goto ret0;

 L54108: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54109;
  goto ret0;

 L54109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54110;
  goto ret0;

 L54110: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54111;
  goto ret0;

 L54111: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L54112;
    }
  goto ret0;

 L54112: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5140 (insn, operands);
    }
  goto ret0;

 L65833: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, DFmode))
    {
      operands[1] = x4;
      goto L54119;
    }
  goto ret0;

 L54119: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, DFmode))
    {
      operands[2] = x4;
      goto L54120;
    }
  goto ret0;

 L54120: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54121;

 L54121: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[4] = x3;
  goto L54122;

 L54122: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54123;
  goto ret0;

 L54123: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54124;
  goto ret0;

 L54124: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54125;
  goto ret0;

 L54125: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54126;
  goto ret0;

 L54126: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54127;
  goto ret0;

 L54127: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L54128;
    }
  goto ret0;

 L54128: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5141 (insn, operands);
    }
  goto ret0;

 L65834: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x4, XFmode))
    {
      operands[1] = x4;
      goto L54135;
    }
  goto ret0;

 L54135: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (general_operand (x4, XFmode))
    {
      operands[2] = x4;
      goto L54136;
    }
  goto ret0;

 L54136: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54137;

 L54137: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  operands[4] = x3;
  goto L54138;

 L54138: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54139;
  goto ret0;

 L54139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 18)
    goto L54140;
  goto ret0;

 L54140: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54141;
  goto ret0;

 L54141: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCFPmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54142;
  goto ret0;

 L54142: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54143;
  goto ret0;

 L54143: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[5] = x2;
      goto L54144;
    }
  goto ret0;

 L54144: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && !TARGET_CMOVE
   && reload_completed))
    {
      return gen_split_5142 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
split_9 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65775;
    case HImode:
      goto L65776;
    case SFmode:
      goto L65779;
    case DFmode:
      goto L65780;
    case XFmode:
      goto L65781;
    case CCmode:
      goto L65782;
    default:
      break;
    }
 L54099: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == PC)
    goto L54100;
  goto ret0;

 L65775: ATTRIBUTE_UNUSED_LABEL
  tem = split_7 (x0, insn);
  if (tem != 0)
    return tem;
  goto L54099;

 L65776: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52827;
    }
 L65777: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L52851;
    }
  goto L54099;

 L52827: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65803;
  x2 = XEXP (x1, 0);
  goto L65777;

 L65803: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52828;
    case UNSPEC:
      goto L65806;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65777;

 L52828: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52829;
    }
  x2 = XEXP (x1, 0);
  goto L65777;

 L52829: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52830;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52831;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52831: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L52832;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52832: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L52833;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52833: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52834;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52834: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L52835;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52835: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4774 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4884 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L65806: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65808;
  x2 = XEXP (x1, 0);
  goto L65777;

 L65808: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54857;
    case 65LL:
      goto L54869;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65777;

 L54857: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54858;
    }
  x2 = XEXP (x1, 0);
  goto L65777;

 L54858: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54859;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54859: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54860;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54860: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54861;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54861: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54862;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54862: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54863;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54863: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L54864;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54864: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15777 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5340 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54869: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54870;
    }
  x2 = XEXP (x1, 0);
  goto L65777;

 L54870: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54871;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54871: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54872;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54872: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54873;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54873: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54874;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54874: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54875;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L54876;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L54876: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15777 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5341 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65777;

 L52851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65810;
  x2 = XEXP (x1, 0);
  goto L54099;

 L65810: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52852;
    case UNSPEC:
      goto L65813;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L54099;

 L52852: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52853;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L52853: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52854;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52855;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52855: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L52856;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52856: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L52857;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52857: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52858;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52858: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L52859;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52859: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4786 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4886 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L65813: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65815;
  x2 = XEXP (x1, 0);
  goto L54099;

 L65815: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54905;
    case 65LL:
      goto L54917;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L54905: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54906;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L54906: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54907;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54907: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54908;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54908: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54909;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54909: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54910;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54910: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54911;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54911: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L54912;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54912: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15791 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5344 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54917: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54918;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L54918: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54919;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54919: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54920;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54920: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54921;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54921: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54922;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54922: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54923;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54923: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[4] = x2;
      goto L54924;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54924: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15791 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5345 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L65779: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, SFmode))
    {
      operands[0] = x2;
      goto L52917;
    }
  goto L54099;

 L52917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SFmode
      && GET_CODE (x2) == FLOAT)
    goto L52918;
  x2 = XEXP (x1, 0);
  goto L54099;

 L52918: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L65817;
  x2 = XEXP (x1, 0);
  goto L54099;

 L65817: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L52919;
    }
 L65818: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L52955;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L52919: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52920;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52920: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L52921;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52921: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52922;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52922: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L52923;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52923: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52924;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52924: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52925;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52925: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5039 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)
   && reload_completed))
    {
      return gen_split_4898 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65818;

 L52955: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52956;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52956: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L52957;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52957: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52958;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52958: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L52959;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52959: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52960;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52960: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52961;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52961: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5064 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)
   && reload_completed))
    {
      return gen_split_4901 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L65780: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, DFmode))
    {
      operands[0] = x2;
      goto L52929;
    }
  goto L54099;

 L52929: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == FLOAT)
    goto L52930;
  x2 = XEXP (x1, 0);
  goto L54099;

 L52930: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L65819;
  x2 = XEXP (x1, 0);
  goto L54099;

 L65819: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L52931;
    }
 L65820: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L52967;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L52931: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52932;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52932: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L52933;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52933: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52934;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52934: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L52935;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52935: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52936;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52936: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52937;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52937: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5039 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)
   && reload_completed))
    {
      return gen_split_4899 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65820;

 L52967: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52968;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52968: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L52969;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52969: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52970;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52970: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L52971;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52971: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52972;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52972: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52973;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52973: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5064 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)
   && reload_completed))
    {
      return gen_split_4902 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L65781: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, XFmode))
    {
      operands[0] = x2;
      goto L52941;
    }
  goto L54099;

 L52941: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == XFmode
      && GET_CODE (x2) == FLOAT)
    goto L52942;
  x2 = XEXP (x1, 0);
  goto L54099;

 L52942: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L65821;
  x2 = XEXP (x1, 0);
  goto L54099;

 L65821: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L52943;
    }
 L65822: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L52979;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L52943: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52944;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52944: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L52945;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52945: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52946;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52946: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L52947;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52947: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52948;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52948: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52949;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52949: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5039 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)
   && reload_completed))
    {
      return gen_split_4900 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L65822;

 L52979: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L52980;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[3] = x2;
      goto L52981;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52981: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L52982;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52982: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, V4SImode))
    {
      operands[4] = x2;
      goto L52983;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52983: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52984;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L52985;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L52985: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5064 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC
   && !TARGET_64BIT && optimize_function_for_speed_p (cfun)
   && reload_completed))
    {
      return gen_split_4903 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L65782: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54535;
  goto L54099;

 L54535: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == UNSPEC
      && XVECLEN (x2, 0) == 1
      && XINT (x2, 1) == 27)
    goto L54536;
  x2 = XEXP (x1, 0);
  goto L54099;

 L54536: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L54537;
    }
  x2 = XEXP (x1, 0);
  goto L54099;

 L54537: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L54538;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54538: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L54539;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54539: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L54540;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54540: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L54541;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54541: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54542;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54542: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54543;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54543: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 13111 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_POPCNT) && 
#line 13113 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5206 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L54099;

 L54100: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == IF_THEN_ELSE)
    goto L54149;
  goto ret0;

 L54149: ATTRIBUTE_UNUSED_LABEL
  return split_8 (x0, insn);
 ret0:
  return 0;
}

static rtx
split_10 (rtx x0 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case DImode:
      goto L65851;
    case TImode:
      goto L65852;
    case TFmode:
      goto L65854;
    case XFmode:
      goto L65855;
    case DFmode:
      goto L65856;
    case SFmode:
      goto L65857;
    case HImode:
      goto L65865;
    case SImode:
      goto L65866;
    case QImode:
      goto L65868;
    case V4SImode:
      goto L65873;
    case V4SFmode:
      goto L65874;
    case V4DFmode:
      goto L65876;
    case V4DImode:
      goto L65877;
    case V8SFmode:
      goto L65878;
    case V8SImode:
      goto L65879;
    case V2DImode:
      goto L65880;
    case V2DFmode:
      goto L65881;
    case V16HImode:
      goto L65884;
    case V8HImode:
      goto L65885;
    case V32QImode:
      goto L65886;
    case V16QImode:
      goto L65887;
    case V16SImode:
      goto L65898;
    case V16SFmode:
      goto L65899;
    case V8DFmode:
      goto L65900;
    default:
      break;
    }
 L52443: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L65901;
    case REG:
      goto L65902;
    default:
     break;
   }
 L52591: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L52592;
    }
  switch (GET_CODE (x1))
    {
    case STRICT_LOW_PART:
      goto L53886;
    case PC:
      goto L53909;
    case REG:
    case SUBREG:
    case MEM:
      goto L52468;
    default:
      goto L53017;
   }
 L52468: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L52469;
    }
 L53017: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L65903;
    case DImode:
      goto L65904;
    case V8QImode:
      goto L65906;
    case V4HImode:
      goto L65907;
    case V2SImode:
      goto L65908;
    case V1DImode:
      goto L65909;
    case V2SFmode:
      goto L65910;
    case V4SFmode:
      goto L65912;
    case V2DFmode:
      goto L65913;
    default:
      break;
    }
 L53298: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == REG)
    goto L65916;
 L53081: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L53082;
    }
  goto ret0;

 L65851: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L52396;
    }
 L65853: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L52404;
    }
 L65861: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L52473;
    }
 L65862: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L52478;
    }
 L65863: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L52483;
    }
  goto L52443;

 L52396: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L52397;
    }
  x1 = XEXP (x0, 0);
  goto L65853;

 L52397: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1781 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[1]) || SSE_REG_P (operands[1]))))
    {
      return gen_split_4781 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65853;

 L52404: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L52405;
    }
  x1 = XEXP (x0, 0);
  goto L65861;

 L52405: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2272 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0])
	|| SSE_REG_P (operands[0])
	|| MASK_REG_P (operands[0]))
   && !(MMX_REG_P (operands[1])
	|| SSE_REG_P (operands[1])
	|| MASK_REG_P (operands[1]))))
    {
      return gen_split_4791 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65861;

 L52473: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == ZERO_EXTEND)
    goto L52474;
  x1 = XEXP (x0, 0);
  goto L65862;

 L52474: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L52475;
    }
  x1 = XEXP (x0, 0);
  goto L65862;

 L52475: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3585 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4815 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65862;

 L52478: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == ZERO_EXTEND)
    goto L52479;
  x1 = XEXP (x0, 0);
  goto L65863;

 L52479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L52480;
    }
  x1 = XEXP (x0, 0);
  goto L65863;

 L52480: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3592 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))
   && true_regnum (operands[0]) == true_regnum (operands[1])))
    {
      return gen_split_4816 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65863;

 L52483: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L65918;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65918: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case ZERO_EXTEND:
      goto L52484;
    case FIX:
      goto L52713;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52484: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L52485;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52485: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3601 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && reload_completed
   && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))))
    {
      return gen_split_4817 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52713: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L52714;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52714: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || DImode != DImode))
	&& TARGET_SSE_MATH)
   && can_create_pseudo_p ()) && 
#line 4584 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4872 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65852: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, TImode))
    {
      operands[0] = x1;
      goto L52400;
    }
  goto L52443;

 L52400: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, TImode))
    {
      operands[1] = x1;
      goto L52401;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52401: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2103 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && !SSE_REG_P (operands[0]) && !SSE_REG_P (operands[1])))
    {
      return gen_split_4790 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65854: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, TFmode))
    {
      operands[0] = x1;
      goto L52408;
    }
  if (register_operand (x1, TFmode))
    {
      operands[0] = x1;
      goto L53633;
    }
  goto L52443;

 L52408: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (sse_reg_operand (x1, TFmode))
    {
      operands[1] = x1;
      goto L52409;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52409: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2808 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE && reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4794 (insn, operands);
    }
 L52413: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2808 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE && reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4795 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L53633: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == TFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 47)
    goto L53634;
  x1 = XEXP (x0, 0);
  goto L52443;

 L53634: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (vector_move_operand (x2, TFmode))
    {
      operands[1] = x2;
      goto L53635;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L53635: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, TFmode))
    {
      operands[2] = x2;
      goto L53636;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L53636: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, TFmode))
    {
      operands[3] = x2;
      goto L53637;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L53637: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9080 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (TFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (TFmode == TFmode))) && 
#line 9083 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5067 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65855: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L65920;
    case REG:
      goto L65921;
    default:
     break;
   }
  goto L52443;

 L65920: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, XFmode))
    {
      operands[0] = x1;
      goto L52416;
    }
  goto L52443;

 L52416: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == XFmode)
    goto L65922;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65922: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case REG:
      goto L65924;
    case FLOAT_EXTEND:
      goto L52573;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65924: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x1, XFmode))
    {
      operands[1] = x1;
      goto L52417;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52417: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2842 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4796 (insn, operands);
    }
 L52421: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2842 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4797 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52573: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L65925;
    case DFmode:
      goto L65926;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65925: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52574;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52574: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3967 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4831 (insn, operands);
    }
 L52579: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3967 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4832 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65926: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L52584;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52584: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3967 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4833 (insn, operands);
    }
 L52589: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3967 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4834 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65921: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x1, XFmode))
    {
      operands[0] = x1;
      goto L52465;
    }
  goto L52443;

 L52465: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (immediate_operand (x1, XFmode))
    {
      operands[1] = x1;
      goto L52466;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52466: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3438 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (standard_80387_constant_p (operands[1]) == 8
       || standard_80387_constant_p (operands[1]) == 9)))
    {
      return gen_split_4812 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65856: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L65927;
    case REG:
      goto L65928;
    default:
     break;
   }
  goto L52443;

 L65927: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L52424;
    }
  goto L52443;

 L52424: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode)
    goto L65930;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65930: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case REG:
      goto L65932;
    case FLOAT_EXTEND:
      goto L52563;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65932: ATTRIBUTE_UNUSED_LABEL
  if (any_fp_register_operand (x1, DFmode))
    {
      operands[1] = x1;
      goto L52425;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52425: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2876 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4798 (insn, operands);
    }
 L52429: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2876 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4799 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (fp_register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52564;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52564: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3960 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4829 (insn, operands);
    }
 L52569: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 3960 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4830 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65928: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L52461;
    }
 L65929: ATTRIBUTE_UNUSED_LABEL
  if (register_and_not_any_fp_reg_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L55136;
    }
  goto L52443;

 L52461: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (immediate_operand (x1, DFmode))
    {
      operands[1] = x1;
      goto L52462;
    }
  x1 = XEXP (x0, 0);
  goto L65929;

 L52462: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3438 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (standard_80387_constant_p (operands[1]) == 8
       || standard_80387_constant_p (operands[1]) == 9)))
    {
      return gen_split_4811 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65929;

 L55136: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L55137;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55137: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (fcmov_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55138;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55138: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55139;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55139: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55140;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55140: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L55141;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55141: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L55142;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55142: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16869 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && reload_completed))
    {
      return gen_split_5401 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65857: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L65933;
    case REG:
      goto L65934;
    default:
     break;
   }
 L65864: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L52603;
    }
 L65872: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L56205;
    }
 L65875: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L56320;
    }
  goto L52443;

 L65933: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L52432;
    }
  goto L65872;

 L52432: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode)
    goto L65935;
  x1 = XEXP (x0, 0);
  goto L65872;

 L65935: ATTRIBUTE_UNUSED_LABEL
  if (any_fp_register_operand (x1, SFmode))
    {
      operands[1] = x1;
      goto L52433;
    }
  if (memory_operand (x1, SFmode))
    {
      operands[1] = x1;
      goto L52441;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52433: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)))
    {
      return gen_split_4800 (insn, operands);
    }
 L52437: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 2914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)))
    {
      return gen_split_4801 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52441: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2937 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (operands[2] = find_constant_src (insn))))
    {
      return gen_split_4802 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L65934: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L52457;
    }
  goto L65864;

 L52457: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (immediate_operand (x1, SFmode))
    {
      operands[1] = x1;
      goto L52458;
    }
  x1 = XEXP (x0, 0);
  goto L65864;

 L52458: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3438 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (standard_80387_constant_p (operands[1]) == 8
       || standard_80387_constant_p (operands[1]) == 9)))
    {
      return gen_split_4810 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65864;

 L52603: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode)
    goto L65937;
  x1 = XEXP (x0, 0);
  goto L65872;

 L65937: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FLOAT_TRUNCATE:
      goto L52604;
    case FLOAT:
      goto L52875;
    case UNSPEC:
      goto L65942;
    case IF_THEN_ELSE:
      goto L55146;
    case VEC_SELECT:
      goto L56212;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52604: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L52605;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52605: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4156 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_VECTOR_FP_CONVERTS
   && optimize_insn_for_speed_p ()
   && reload_completed && SSE_REG_P (operands[0])))
    {
      return gen_split_4841 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65943;
    case DImode:
      goto L65944;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L65943: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L52876;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52876: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4916 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_USE_VECTOR_CONVERTS && optimize_function_for_speed_p (cfun)
   && reload_completed && SSE_REG_P (operands[0])
   && (MEM_P (operands[1]) || TARGET_INTER_UNIT_MOVES_TO_VEC)))
    {
      return gen_split_4890 (insn, operands);
    }
 L52886: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4940 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_SSE_PARTIAL_REG_DEPENDENCY
   && optimize_function_for_speed_p (cfun)
   && reload_completed && SSE_REG_P (operands[0])))
    {
      return gen_split_4892 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L65944: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L52891;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L52891: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4940 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_SSE_PARTIAL_REG_DEPENDENCY
   && optimize_function_for_speed_p (cfun)
   && reload_completed && SSE_REG_P (operands[0])) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4893 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L65942: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 47)
    goto L53620;
  x1 = XEXP (x0, 0);
  goto L65872;

 L53620: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (vector_move_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L53621;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L53621: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L53622;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L53622: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[3] = x2;
      goto L53623;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L53623: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9080 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (SFmode == TFmode))) && 
#line 9083 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5065 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L55146: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55147;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L55147: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55148;
  x1 = XEXP (x0, 0);
  goto L65872;

 L55148: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55149;
  x1 = XEXP (x0, 0);
  goto L65872;

 L55149: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[2] = x2;
      goto L55150;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L55150: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L55151;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L55151: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16903 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_80387 && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && (MEM_P (operands[2]) || MEM_P (operands[3]))
   && can_create_pseudo_p ()
   && optimize_insn_for_speed_p ()))
    {
      return gen_split_5402 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L56212: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L56213;
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L56213: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56214;
  x1 = XEXP (x0, 0);
  goto L65872;

 L56214: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 628 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && reload_completed))
    {
      return gen_split_5563 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65872;

 L56205: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56206;
  x1 = XEXP (x0, 0);
  goto L65875;

 L56206: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SFmode:
      goto L65945;
    case V4SFmode:
      goto L65946;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L65875;

 L65945: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SFmode))
    {
      operands[1] = x2;
      goto L56207;
    }
  x1 = XEXP (x0, 0);
  goto L65875;

 L56207: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56208;
  x1 = XEXP (x0, 0);
  goto L65875;

 L56208: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 589 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 591 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
( reload_completed)))
    {
      return gen_split_5562 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65875;

 L65946: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L56309;
    }
 L65947: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L56315;
    }
  x1 = XEXP (x0, 0);
  goto L65875;

 L56309: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56310;
  x2 = XEXP (x1, 0);
  goto L65947;

 L56310: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 6525 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 6527 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_6130 (insn, operands);
    }
  x2 = XEXP (x1, 0);
  goto L65947;

 L56315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56316;
  x1 = XEXP (x0, 0);
  goto L65875;

 L56316: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L56317;
    }
  x1 = XEXP (x0, 0);
  goto L65875;

 L56317: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6541 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE4_1) && 
#line 6547 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed && SSE_REG_P (operands[0]))))
    {
      return gen_split_6131 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65875;

 L56320: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56321;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L56322;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56322: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56323;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56323: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L56324;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56324: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6582 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE) && 
#line 6584 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_6132 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65865: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L52702;
    }
 L65869: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L54687;
    }
  goto L52443;

 L52702: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == FIX)
    goto L52703;
  x1 = XEXP (x0, 0);
  goto L65869;

 L52703: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L52704;
    }
  x1 = XEXP (x0, 0);
  goto L65869;

 L52704: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || HImode != DImode))
	&& TARGET_SSE_MATH)
   && can_create_pseudo_p ()) && 
#line 4584 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4870 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65869;

 L54687: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode)
    goto L65948;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65948: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L65952;
    case IF_THEN_ELSE:
      goto L55035;
    case VEC_SELECT:
      goto L56563;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65952: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1)
    goto L65954;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65954: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x1, 1))
    {
    case 56LL:
      goto L54688;
    case 77LL:
      goto L54952;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L54688: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L54689;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L54689: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15359 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()) && 
#line 15362 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5294 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L54952: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L65956;
    case DFmode:
      goto L65957;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65956: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L54953;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L54953: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15844 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()) && 
#line 15847 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5358 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65957: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L54958;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L54958: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15844 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()) && 
#line 15847 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5359 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55035: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55036;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55036: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55037;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55037: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55038;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55038: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode)
    goto L65958;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65958: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L55039;
    }
 L65959: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L55075;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55039: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L55040;
    }
  x2 = XEXP (x1, 1);
  goto L65959;

 L55040: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16751 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && (MEM_P (operands[2]) || MEM_P (operands[3]))
   && can_create_pseudo_p ()
   && optimize_insn_for_speed_p ()))
    {
      return gen_split_5387 (insn, operands);
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L65959;

 L55075: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L55076;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55076: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16782 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL
   && reload_completed))
    {
      return gen_split_5391 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56563: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V8HImode))
    {
      operands[1] = x2;
      goto L56564;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56564: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56565;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56565: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_7_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L56566;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56566: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12810 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6849 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65866: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L52707;
    }
  goto L52443;

 L52707: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == FIX)
    goto L52708;
  x1 = XEXP (x0, 0);
  goto L52443;

 L52708: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L52709;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L52709: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   && TARGET_FISTTP
   && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
	 && (TARGET_64BIT || SImode != DImode))
	&& TARGET_SSE_MATH)
   && can_create_pseudo_p ()) && 
#line 4584 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_4871 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65868: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L53879;
    }
 L65870: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L55061;
    }
  goto L52443;

 L53879: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L65960;
  x1 = XEXP (x0, 0);
  goto L65870;

 L65960: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case NE:
      goto L53880;
    case EQ:
      goto L53895;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L65870;

 L53880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L53881;
    }
  x1 = XEXP (x0, 0);
  goto L65870;

 L53881: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L53882;
  x1 = XEXP (x0, 0);
  goto L65870;

 L53882: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53883;
  x1 = XEXP (x0, 0);
  goto L65870;

 L53883: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return gen_split_5123 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65870;

 L53895: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L53896;
    }
  x1 = XEXP (x0, 0);
  goto L65870;

 L53896: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L53897;
  x1 = XEXP (x0, 0);
  goto L65870;

 L53897: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53898;
  x1 = XEXP (x0, 0);
  goto L65870;

 L53898: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return gen_split_5125 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65870;

 L55061: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L65962;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65962: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case IF_THEN_ELSE:
      goto L55062;
    case VEC_SELECT:
      goto L56556;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55062: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55063;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55063: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55064;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55064: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55065;
  x1 = XEXP (x0, 0);
  goto L52443;

 L55065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, QImode))
    {
      operands[2] = x2;
      goto L55066;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55066: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (register_operand (x2, QImode))
    {
      operands[3] = x2;
      goto L55067;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L55067: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16782 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL
   && reload_completed))
    {
      return gen_split_5390 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V16QImode))
    {
      operands[1] = x2;
      goto L56557;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56557: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56558;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56558: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_15_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L56559;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56559: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12810 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6848 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65873: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L56293;
    }
 L65882: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L56385;
    }
 L65894: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4SImode))
    {
      operands[0] = x1;
      goto L56710;
    }
  goto L52443;

 L56293: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == VEC_MERGE)
    goto L56294;
  x1 = XEXP (x0, 0);
  goto L65882;

 L56294: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SImode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L56295;
  x1 = XEXP (x0, 0);
  goto L65882;

 L56295: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L56296;
    }
  x1 = XEXP (x0, 0);
  goto L65882;

 L56296: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L56297;
  x1 = XEXP (x0, 0);
  goto L65882;

 L56297: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6505 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6112 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65882;

 L56385: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56386;
  x1 = XEXP (x0, 0);
  goto L65894;

 L56386: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L56387;
    }
  x1 = XEXP (x0, 0);
  goto L65894;

 L56387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L56388;
  x1 = XEXP (x0, 0);
  goto L65894;

 L56388: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56389;
  x1 = XEXP (x0, 0);
  goto L65894;

 L56389: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56390;
  x1 = XEXP (x0, 0);
  goto L65894;

 L56390: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56391;
  x1 = XEXP (x0, 0);
  goto L65894;

 L56391: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7043 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1])) && reload_completed))
    {
      return gen_split_6157 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65894;

 L56710: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56711;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56711: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L56712;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56712: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
      available, because then we can broadcast from GPRs directly.
      For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
      for V*SI mode it requires just -mavx512vl.  */
   && !(TARGET_AVX512VL
	&& (TARGET_AVX512BW || SImode == SImode))
   && reload_completed && GENERAL_REG_P (operands[1])))
    {
      return gen_split_7013 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65874: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L56300;
    }
 L65883: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L56394;
    }
  goto L52443;

 L56300: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode
      && GET_CODE (x1) == VEC_MERGE)
    goto L56301;
  x1 = XEXP (x0, 0);
  goto L65883;

 L56301: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4SFmode
      && GET_CODE (x2) == VEC_DUPLICATE)
    goto L56302;
  x1 = XEXP (x0, 0);
  goto L65883;

 L56302: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonmemory_operand (x3, SFmode))
    {
      operands[1] = x3;
      goto L56303;
    }
  x1 = XEXP (x0, 0);
  goto L65883;

 L56303: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L56304;
  x1 = XEXP (x0, 0);
  goto L65883;

 L56304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 6505 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6113 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65883;

 L56394: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4SFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56395;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L56396;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56396: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L56397;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56397: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56398;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56398: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56399;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56399: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56400;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56400: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 7043 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1])) && reload_completed))
    {
      return gen_split_6158 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65876: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4DFmode))
    {
      operands[0] = x1;
      goto L56327;
    }
 L65897: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4DFmode))
    {
      operands[0] = x1;
      goto L56730;
    }
  goto L52443;

 L56327: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode)
    goto L65964;
  x1 = XEXP (x0, 0);
  goto L65897;

 L65964: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L56328;
    case UNSPEC:
      goto L65966;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L65897;

 L56328: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DFmode))
    {
      operands[1] = x2;
      goto L56329;
    }
  x1 = XEXP (x0, 0);
  goto L65897;

 L56329: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L56330;
  x1 = XEXP (x0, 0);
  goto L65897;

 L56330: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56331;
  x1 = XEXP (x0, 0);
  goto L65897;

 L56331: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56332;
  x1 = XEXP (x0, 0);
  goto L65897;

 L56332: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56333;
  x1 = XEXP (x0, 0);
  goto L65897;

 L56333: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 6760 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
  && reload_completed))
    {
      return gen_split_6141 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65897;

 L65966: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L56760;
  x1 = XEXP (x0, 0);
  goto L65897;

 L56760: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L56761;
    }
  x1 = XEXP (x0, 0);
  goto L65897;

 L56761: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 17735 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7099 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65897;

 L56730: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DFmode)
    goto L65967;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65967: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_DUPLICATE:
      goto L56731;
    case VEC_SELECT:
      goto L56743;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56731: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L56732;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56732: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16839 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !TARGET_AVX2 && reload_completed))
    {
      return gen_split_7017 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56743: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L56744;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56744: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && avx_vbroadcast_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L56745;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56745: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L56746;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56746: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16989 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 16991 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed && (V4DFmode != V4DFmode || !TARGET_AVX2))))
    {
      return gen_split_7019 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65877: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4DImode))
    {
      operands[0] = x1;
      goto L56336;
    }
 L65896: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4DImode))
    {
      operands[0] = x1;
      goto L56725;
    }
  goto L52443;

 L56336: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56337;
  x1 = XEXP (x0, 0);
  goto L65896;

 L56337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8DImode))
    {
      operands[1] = x2;
      goto L56338;
    }
  x1 = XEXP (x0, 0);
  goto L65896;

 L56338: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 4)
    goto L56339;
  x1 = XEXP (x0, 0);
  goto L65896;

 L56339: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56340;
  x1 = XEXP (x0, 0);
  goto L65896;

 L56340: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56341;
  x1 = XEXP (x0, 0);
  goto L65896;

 L56341: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56342;
  x1 = XEXP (x0, 0);
  goto L65896;

 L56342: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)]
      && 
#line 6760 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
  && reload_completed))
    {
      return gen_split_6142 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65896;

 L56725: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V4DImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56726;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56726: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L56727;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56727: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16839 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !TARGET_AVX2 && reload_completed))
    {
      return gen_split_7016 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65878: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8SFmode))
    {
      operands[0] = x1;
      goto L56345;
    }
 L65895: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8SFmode))
    {
      operands[0] = x1;
      goto L56720;
    }
  goto L52443;

 L56345: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode)
    goto L65969;
  x1 = XEXP (x0, 0);
  goto L65895;

 L65969: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L56346;
    case UNSPEC:
      goto L65971;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L65895;

 L56346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SFmode))
    {
      operands[1] = x2;
      goto L56347;
    }
  x1 = XEXP (x0, 0);
  goto L65895;

 L56347: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L56348;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56348: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56349;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56349: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56350;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56350: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56351;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56351: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L56352;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56352: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L56353;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56353: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L56354;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56354: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L56355;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56355: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 6961 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   && reload_completed))
    {
      return gen_split_6153 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65895;

 L65971: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L56755;
  x1 = XEXP (x0, 0);
  goto L65895;

 L56755: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L56756;
    }
  x1 = XEXP (x0, 0);
  goto L65895;

 L56756: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 17735 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7098 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65895;

 L56720: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SFmode)
    goto L65972;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65972: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_DUPLICATE:
      goto L56721;
    case VEC_SELECT:
      goto L56736;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56721: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L56722;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56722: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16839 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !TARGET_AVX2 && reload_completed))
    {
      return gen_split_7015 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56736: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L56737;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56737: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (XVECLEN (x2, 0) >= 1
      && avx_vbroadcast_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L56738;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56738: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L56739;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56739: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16989 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 16991 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed && (V8SFmode != V4DFmode || !TARGET_AVX2))))
    {
      return gen_split_7018 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65879: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8SImode))
    {
      operands[0] = x1;
      goto L56358;
    }
 L65893: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8SImode))
    {
      operands[0] = x1;
      goto L56705;
    }
  goto L52443;

 L56358: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode)
    goto L65974;
  x1 = XEXP (x0, 0);
  goto L65893;

 L65974: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L56359;
    case UNSPEC:
      goto L65976;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L65893;

 L56359: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16SImode))
    {
      operands[1] = x2;
      goto L56360;
    }
  x1 = XEXP (x0, 0);
  goto L65893;

 L56360: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L56361;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56361: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56362;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56362: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56363;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56363: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56364;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56364: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L56365;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56365: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L56366;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56366: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L56367;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56367: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L56368;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56368: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && 
#line 6961 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   && reload_completed))
    {
      return gen_split_6154 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65893;

 L65976: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L56750;
  x1 = XEXP (x0, 0);
  goto L65893;

 L56750: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L56751;
    }
  x1 = XEXP (x0, 0);
  goto L65893;

 L56751: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17733 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX) && 
#line 17735 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7097 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65893;

 L56705: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8SImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56706;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56706: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L56707;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56707: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
      available, because then we can broadcast from GPRs directly.
      For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
      for V*SI mode it requires just -mavx512vl.  */
   && !(TARGET_AVX512VL
	&& (TARGET_AVX512BW || SImode == SImode))
   && reload_completed && GENERAL_REG_P (operands[1])))
    {
      return gen_split_7012 (insn, operands);
    }
 L56717: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16839 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !TARGET_AVX2 && reload_completed))
    {
      return gen_split_7014 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65880: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2DImode))
    {
      operands[0] = x1;
      goto L56371;
    }
  goto L52443;

 L56371: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56372;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56372: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DImode))
    {
      operands[1] = x2;
      goto L56373;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56373: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L56374;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56374: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56375;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56375: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 7000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
  && reload_completed))
    {
      return gen_split_6155 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65881: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L56378;
    }
 L65888: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L56495;
    }
  goto L52443;

 L56378: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56379;
  x1 = XEXP (x0, 0);
  goto L65888;

 L56379: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L56380;
    }
  x1 = XEXP (x0, 0);
  goto L65888;

 L56380: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L56381;
  x1 = XEXP (x0, 0);
  goto L65888;

 L56381: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56382;
  x1 = XEXP (x0, 0);
  goto L65888;

 L56382: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 7000 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
  && reload_completed))
    {
      return gen_split_6156 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65888;

 L56495: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode)
    goto L65977;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65977: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case VEC_SELECT:
      goto L56496;
    case VEC_CONCAT:
      goto L56527;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L56497;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56497: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L56498;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56498: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L56499;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56499: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L56500;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56500: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56501;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56501: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)]
      && 
#line 7625 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3 && reload_completed))
    {
      return gen_split_6193 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56527: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L65979;
  x1 = XEXP (x0, 0);
  goto L52443;

 L65979: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == VEC_SELECT)
    goto L56528;
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L56537;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56528: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56529;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56529: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L56530;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56530: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56531;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56531: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (register_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L56532;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56532: ATTRIBUTE_UNUSED_LABEL
  if (
#line 8384 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && reload_completed))
    {
      return gen_split_6226 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56537: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DFmode
      && GET_CODE (x2) == VEC_SELECT)
    goto L56538;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56539;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56539: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PARALLEL
      && XVECLEN (x3, 0) == 1)
    goto L56540;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56540: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 8454 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && reload_completed))
    {
      return gen_split_6228 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65884: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16HImode))
    {
      operands[0] = x1;
      goto L56403;
    }
 L65891: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V16HImode))
    {
      operands[0] = x1;
      goto L56695;
    }
  goto L52443;

 L56403: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16HImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56404;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32HImode))
    {
      operands[1] = x2;
      goto L56405;
    }
  x1 = XEXP (x0, 0);
  goto L65891;

 L56405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L56406;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56406: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56407;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56407: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56408;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56408: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56409;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56409: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L56410;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56410: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L56411;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56411: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L56412;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56412: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L56413;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56413: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L56414;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56414: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L56415;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56415: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L56416;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56416: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L56417;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56417: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L56418;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56418: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L56419;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56419: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L56420;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56420: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L56421;
  x1 = XEXP (x0, 0);
  goto L65891;

 L56421: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 7146 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 7148 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_6159 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65891;

 L56695: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16HImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56696;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56696: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L56697;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56697: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
      available, because then we can broadcast from GPRs directly.
      For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
      for V*SI mode it requires just -mavx512vl.  */
   && !(TARGET_AVX512VL
	&& (TARGET_AVX512BW || HImode == SImode))
   && reload_completed && GENERAL_REG_P (operands[1])))
    {
      return gen_split_7010 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65885: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8HImode))
    {
      operands[0] = x1;
      goto L56424;
    }
 L65892: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V8HImode))
    {
      operands[0] = x1;
      goto L56700;
    }
  goto L52443;

 L56424: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8HImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56425;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V16HImode))
    {
      operands[1] = x2;
      goto L56426;
    }
  x1 = XEXP (x0, 0);
  goto L65892;

 L56426: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 8)
    goto L56427;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56427: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56428;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56428: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56429;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56429: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56430;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56430: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L56431;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56431: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L56432;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56432: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L56433;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56433: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L56434;
  x1 = XEXP (x0, 0);
  goto L65892;

 L56434: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)]
      && (
#line 7186 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 7188 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_6160 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65892;

 L56700: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8HImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56701;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56701: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L56702;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56702: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
      available, because then we can broadcast from GPRs directly.
      For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
      for V*SI mode it requires just -mavx512vl.  */
   && !(TARGET_AVX512VL
	&& (TARGET_AVX512BW || HImode == SImode))
   && reload_completed && GENERAL_REG_P (operands[1])))
    {
      return gen_split_7011 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65886: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V32QImode))
    {
      operands[0] = x1;
      goto L56437;
    }
 L65889: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V32QImode))
    {
      operands[0] = x1;
      goto L56685;
    }
  goto L52443;

 L56437: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32QImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56438;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56438: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V64QImode))
    {
      operands[1] = x2;
      goto L56439;
    }
  x1 = XEXP (x0, 0);
  goto L65889;

 L56439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 32)
    goto L56440;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56440: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56441;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56441: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56442;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56442: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56443;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56443: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L56444;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56444: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L56445;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56445: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L56446;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56446: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L56447;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56447: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L56448;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56448: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L56449;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56449: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L56450;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56450: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L56451;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56451: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L56452;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56452: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L56453;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56453: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L56454;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56454: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L56455;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56455: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)])
    goto L56456;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56456: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 16);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (16)])
    goto L56457;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56457: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 17);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (17)])
    goto L56458;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56458: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 18);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (18)])
    goto L56459;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56459: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 19);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (19)])
    goto L56460;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56460: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 20);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (20)])
    goto L56461;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56461: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 21);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (21)])
    goto L56462;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56462: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 22);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (22)])
    goto L56463;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56463: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 23);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (23)])
    goto L56464;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56464: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 24);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (24)])
    goto L56465;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56465: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 25);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (25)])
    goto L56466;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56466: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 26);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (26)])
    goto L56467;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56467: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 27);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (27)])
    goto L56468;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56468: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 28);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (28)])
    goto L56469;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56469: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 29);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (29)])
    goto L56470;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56470: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 30);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (30)])
    goto L56471;
  x1 = XEXP (x0, 0);
  goto L65889;

 L56471: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 31);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (31)]
      && (
#line 7234 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 7236 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_6161 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65889;

 L56685: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V32QImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56686;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56686: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L56687;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56687: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
      available, because then we can broadcast from GPRs directly.
      For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
      for V*SI mode it requires just -mavx512vl.  */
   && !(TARGET_AVX512VL
	&& (TARGET_AVX512BW || QImode == SImode))
   && reload_completed && GENERAL_REG_P (operands[1])))
    {
      return gen_split_7008 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65887: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16QImode))
    {
      operands[0] = x1;
      goto L56474;
    }
 L65890: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V16QImode))
    {
      operands[0] = x1;
      goto L56690;
    }
  goto L52443;

 L56474: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56475;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, V32QImode))
    {
      operands[1] = x2;
      goto L56476;
    }
  x1 = XEXP (x0, 0);
  goto L65890;

 L56476: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 16)
    goto L56477;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56477: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L56478;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56478: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)])
    goto L56479;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56479: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (2)])
    goto L56480;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56480: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 3);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (3)])
    goto L56481;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56481: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 4);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (4)])
    goto L56482;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56482: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 5);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (5)])
    goto L56483;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56483: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 6);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (6)])
    goto L56484;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56484: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 7);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (7)])
    goto L56485;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56485: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 8);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L56486;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56486: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 9);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (9)])
    goto L56487;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56487: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 10);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (10)])
    goto L56488;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56488: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 11);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (11)])
    goto L56489;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56489: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 12);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (12)])
    goto L56490;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56490: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 13);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (13)])
    goto L56491;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56491: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 14);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (14)])
    goto L56492;
  x1 = XEXP (x0, 0);
  goto L65890;

 L56492: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 15);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (15)]
      && (
#line 7286 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 7288 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_6162 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65890;

 L56690: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16QImode
      && GET_CODE (x1) == VEC_DUPLICATE)
    goto L56691;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56691: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L56692;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56692: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16816 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX2
   /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
      available, because then we can broadcast from GPRs directly.
      For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
      for V*SI mode it requires just -mavx512vl.  */
   && !(TARGET_AVX512VL
	&& (TARGET_AVX512BW || QImode == SImode))
   && reload_completed && GENERAL_REG_P (operands[1])))
    {
      return gen_split_7009 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65898: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16SImode))
    {
      operands[0] = x1;
      goto L56764;
    }
  goto L52443;

 L56764: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SImode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L56765;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56765: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SImode:
      goto L65981;
    case V8SImode:
      goto L65982;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65981: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L56766;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56766: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 18615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7190 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65982: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SImode))
    {
      operands[1] = x2;
      goto L56781;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56781: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18633 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 18635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7193 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65899: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V16SFmode))
    {
      operands[0] = x1;
      goto L56769;
    }
  goto L52443;

 L56769: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V16SFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L56770;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56770: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V4SFmode:
      goto L65983;
    case V8SFmode:
      goto L65984;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65983: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4SFmode))
    {
      operands[1] = x2;
      goto L56771;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56771: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 18615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7191 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65984: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V8SFmode))
    {
      operands[1] = x2;
      goto L56786;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56786: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18633 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 18635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7194 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65900: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8DFmode))
    {
      operands[0] = x1;
      goto L56774;
    }
  goto L52443;

 L56774: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V8DFmode
      && GET_CODE (x1) == UNSPEC
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 139)
    goto L56775;
  x1 = XEXP (x0, 0);
  goto L52443;

 L56775: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_MODE (x2))
    {
    case V2DFmode:
      goto L65985;
    case V4DFmode:
      goto L65986;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65985: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L56776;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56776: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18613 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 18615 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7192 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65986: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V4DFmode))
    {
      operands[1] = x2;
      goto L56791;
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L56791: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18633 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_AVX512F) && 
#line 18635 "../../gcc-5.1.0/gcc/config/i386/sse.md"
( reload_completed)))
    {
      return gen_split_7195 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52443;

 L65901: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L52444;
    }
  goto L52468;

 L52444: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L52445;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L52445: ATTRIBUTE_UNUSED_LABEL
  if (
#line 2944 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (GET_MODE (operands[0]) == TFmode
       || GET_MODE (operands[0]) == XFmode
       || GET_MODE (operands[0]) == DFmode)
   && !ANY_FP_REG_P (operands[1])))
    {
      return gen_split_4803 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L65902: ATTRIBUTE_UNUSED_LABEL
  if (any_fp_register_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L52452;
    }
  goto L52591;

 L52452: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_CODE (x1) == FLOAT_EXTEND)
    goto L52453;
  if (memory_operand (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L52449;
    }
  x1 = XEXP (x0, 0);
  goto L52591;

 L52453: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L52454;
    }
  x1 = XEXP (x0, 0);
  goto L52591;

 L52454: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3419 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (GET_MODE (operands[0]) == TFmode
       || GET_MODE (operands[0]) == XFmode
       || GET_MODE (operands[0]) == DFmode)
   && (operands[2] = find_constant_src (insn))))
    {
      return gen_split_4809 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52591;

 L52449: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3400 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (GET_MODE (operands[0]) == TFmode
       || GET_MODE (operands[0]) == XFmode
       || GET_MODE (operands[0]) == DFmode
       || GET_MODE (operands[0]) == SFmode)
   && (operands[2] = find_constant_src (insn))))
    {
      return gen_split_4808 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52591;

 L52592: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode)
    goto L65987;
  x1 = XEXP (x0, 0);
  goto L52468;

 L65987: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case FLOAT_EXTEND:
      goto L52593;
    case FLOAT:
      goto L52880;
    case UNSPEC:
      goto L65992;
    case IF_THEN_ELSE:
      goto L55155;
    case VEC_SELECT:
      goto L56515;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L52468;

 L52593: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52594;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L52594: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4004 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_VECTOR_FP_CONVERTS
   && optimize_insn_for_speed_p ()
   && reload_completed && SSE_REG_P (operands[0])))
    {
      return gen_split_4836 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L52880: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L65993;
    case DImode:
      goto L65994;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L65993: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L52881;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L52881: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4916 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_USE_VECTOR_CONVERTS && optimize_function_for_speed_p (cfun)
   && reload_completed && SSE_REG_P (operands[0])
   && (MEM_P (operands[1]) || TARGET_INTER_UNIT_MOVES_TO_VEC)))
    {
      return gen_split_4891 (insn, operands);
    }
 L52896: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4940 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_SSE_PARTIAL_REG_DEPENDENCY
   && optimize_function_for_speed_p (cfun)
   && reload_completed && SSE_REG_P (operands[0])))
    {
      return gen_split_4894 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L65994: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L52901;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L52901: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4940 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_SSE_PARTIAL_REG_DEPENDENCY
   && optimize_function_for_speed_p (cfun)
   && reload_completed && SSE_REG_P (operands[0])) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4895 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L65992: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 3
      && XINT (x1, 1) == 47)
    goto L53627;
  x1 = XEXP (x0, 0);
  goto L52468;

 L53627: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (vector_move_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L53628;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L53628: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (register_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L53629;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L53629: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[3] = x2;
      goto L53630;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L53630: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 9080 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
   || (TARGET_SSE && (DFmode == TFmode))) && 
#line 9083 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5066 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L55155: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55156;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L55156: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55157;
  x1 = XEXP (x0, 0);
  goto L52468;

 L55157: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55158;
  x1 = XEXP (x0, 0);
  goto L52468;

 L55158: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[2] = x2;
      goto L55159;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L55159: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[3] = x2;
      goto L55160;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L55160: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16903 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_80387 && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && (MEM_P (operands[2]) || MEM_P (operands[3]))
   && can_create_pseudo_p ()
   && optimize_insn_for_speed_p ()))
    {
      return gen_split_5403 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L56515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V2DFmode)
    goto L65995;
  x1 = XEXP (x0, 0);
  goto L52468;

 L65995: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L56516;
    }
 L65996: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2DFmode))
    {
      operands[1] = x2;
      goto L56522;
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L56516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56517;
  x2 = XEXP (x1, 0);
  goto L65996;

 L56517: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 8265 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && reload_completed))
    {
      return gen_split_6223 (insn, operands);
    }
  x2 = XEXP (x1, 0);
  goto L65996;

 L56522: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56523;
  x1 = XEXP (x0, 0);
  goto L52468;

 L56523: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 8308 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && reload_completed))
    {
      return gen_split_6224 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L52468;

 L53886: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L53887;
    }
  goto L53017;

 L53887: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode)
    goto L65997;
  x1 = XEXP (x0, 0);
  goto L53017;

 L65997: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case NE:
      goto L53888;
    case EQ:
      goto L53903;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53888: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L53889;
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53889: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L53890;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53890: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53891;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53891: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return gen_split_5124 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53903: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L53904;
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53904: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L53905;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53905: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53906;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53906: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    {
      return gen_split_5126 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53909: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_CODE (x1) == IF_THEN_ELSE)
    goto L53910;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53910: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case NE:
      goto L53911;
    case EQ:
      goto L53922;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53911: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_comparison_operator (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L53912;
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53912: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L53913;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53913: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53914;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53914: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53915;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53915: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L53916;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53916: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[1] = x3;
  goto L53917;

 L53917: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC)
    {
      return gen_split_5127 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53922: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (ix86_comparison_operator (x3, VOIDmode))
    {
      operands[0] = x3;
      goto L53923;
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L53923: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_CODE (x4) == REG
      && XINT (x4, 0) == 17)
    goto L53924;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53924: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53925;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53925: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L53926;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53926: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == LABEL_REF)
    goto L53927;
  x1 = XEXP (x0, 0);
  goto L53017;

 L53927: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[1] = x3;
  goto L53928;

 L53928: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (GET_CODE (x2) == PC)
    {
      return gen_split_5128 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L52469: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L52470;
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L52470: ATTRIBUTE_UNUSED_LABEL
  if (
#line 3457 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
   && (GET_MODE (operands[0]) == TFmode
       || GET_MODE (operands[0]) == XFmode
       || GET_MODE (operands[0]) == DFmode)
   && !(ANY_FP_REG_P (operands[0]) || ANY_FP_REG_P (operands[1]))))
    {
      return gen_split_4813 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53017;

 L65903: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L53018;
    }
 L65911: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L56217;
    }
 L65914: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L56569;
    }
  goto L53298;

 L53018: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (address_no_seg_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L53019;
    }
 L53874: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x1) == SImode)
    goto L66000;
  x1 = XEXP (x0, 0);
  goto L65911;

 L53019: ATTRIBUTE_UNUSED_LABEL
  if (
#line 5160 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_avoid_lea_for_addr (insn, operands)))
    {
      return gen_split_4914 (insn, operands);
    }
  x1 = XEXP (x0, 1);
  goto L53874;

 L66000: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L66003;
    case IF_THEN_ELSE:
      goto L55044;
    case VEC_SELECT:
      goto L56224;
    case NE:
    case EQ:
    case GE:
    case GT:
    case LE:
    case LT:
    case GEU:
    case GTU:
    case LEU:
    case LTU:
    case UNORDERED:
    case ORDERED:
    case UNEQ:
    case UNGE:
    case UNGT:
    case UNLE:
    case UNLT:
    case LTGT:
      goto L65999;
    default:
      x1 = XEXP (x0, 0);
      goto L65911;
   }
 L65999: ATTRIBUTE_UNUSED_LABEL
  if (ix86_comparison_operator (x1, SImode))
    {
      operands[1] = x1;
      goto L53875;
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L66003: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 56)
    goto L54693;
  x1 = XEXP (x0, 0);
  goto L65911;

 L54693: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L54694;
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L54694: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15359 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()) && 
#line 15362 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5295 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L55044: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55045;
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L55045: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55046;
  x1 = XEXP (x0, 0);
  goto L65911;

 L55046: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55047;
  x1 = XEXP (x0, 0);
  goto L65911;

 L55047: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L55048;
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L55048: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L55049;
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L55049: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16751 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && (MEM_P (operands[2]) || MEM_P (operands[3]))
   && can_create_pseudo_p ()
   && optimize_insn_for_speed_p ()))
    {
      return gen_split_5388 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L56224: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L56225;
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L56225: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56226;
  x1 = XEXP (x0, 0);
  goto L65911;

 L56226: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (1)]
      && 
#line 1319 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && reload_completed))
    {
      return gen_split_5608 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L53875: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L53876;
  x1 = XEXP (x0, 0);
  goto L65911;

 L53876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 10871 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL
   && (!TARGET_ZERO_EXTEND_WITH_AND || optimize_function_for_size_p (cfun))) && 
#line 10874 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_5122 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65911;

 L56217: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L66004;
  x1 = XEXP (x0, 0);
  goto L65914;

 L66004: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x1) == VEC_SELECT)
    goto L56218;
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L56584;
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L56218: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case V2SImode:
      goto L66006;
    case V4SImode:
      goto L66007;
    default:
      break;
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L66006: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, V2SImode))
    {
      operands[1] = x2;
      goto L56219;
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L56219: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56220;
  x1 = XEXP (x0, 0);
  goto L65914;

 L56220: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 1282 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
#line 1284 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
( reload_completed)))
    {
      return gen_split_5607 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L66007: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L56545;
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L56545: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56546;
  x1 = XEXP (x0, 0);
  goto L65914;

 L56546: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 12710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6846 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L56584: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12823 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(can_create_pseudo_p ()
   && GET_CODE (operands[1]) == SUBREG
   && REG_P (SUBREG_REG (operands[1]))
   && (GET_MODE_CLASS (GET_MODE (SUBREG_REG (operands[1]))) == MODE_VECTOR_INT
       || (GET_MODE_CLASS (GET_MODE (SUBREG_REG (operands[1])))
	   == MODE_VECTOR_FLOAT))
   && SUBREG_BYTE (operands[1]) == 0
   && TARGET_SSE
   && (GET_MODE_SIZE (GET_MODE (SUBREG_REG (operands[1]))) == 16
       || (GET_MODE_SIZE (GET_MODE (SUBREG_REG (operands[1]))) == 32
	   && TARGET_AVX)
       || (GET_MODE_SIZE (GET_MODE (SUBREG_REG (operands[1]))) == 64
	   && TARGET_AVX512F))
   && (SImode == SImode || TARGET_64BIT || MEM_P (operands[0]))))
    {
      return gen_split_6852 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65914;

 L56569: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56570;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56570: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V4SImode))
    {
      operands[1] = x2;
      goto L56571;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56571: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56572;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56572: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_3_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L56573;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56573: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12810 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6850 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65904: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L53022;
    }
 L65905: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L54662;
    }
 L65915: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L56576;
    }
  goto L53298;

 L53022: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (address_no_seg_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L53023;
    }
 L55052: ATTRIBUTE_UNUSED_LABEL
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L55053;
  x1 = XEXP (x0, 0);
  goto L65905;

 L53023: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 5160 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed && ix86_avoid_lea_for_addr (insn, operands)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_4915 (insn, operands);
    }
  x1 = XEXP (x0, 1);
  goto L55052;

 L55053: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55054;
    }
  x1 = XEXP (x0, 0);
  goto L65905;

 L55054: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55055;
  x1 = XEXP (x0, 0);
  goto L65905;

 L55055: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55056;
  x1 = XEXP (x0, 0);
  goto L65905;

 L55056: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[2] = x2;
      goto L55057;
    }
  x1 = XEXP (x0, 0);
  goto L65905;

 L55057: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (nonimmediate_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L55058;
    }
  x1 = XEXP (x0, 0);
  goto L65905;

 L55058: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16751 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && (MEM_P (operands[2]) || MEM_P (operands[3]))
   && can_create_pseudo_p ()
   && optimize_insn_for_speed_p ()) && 
#line 955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      return gen_split_5389 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65905;

 L54662: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L66008;
  x1 = XEXP (x0, 0);
  goto L65915;

 L66008: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case UNSPEC:
      goto L66011;
    case VEC_SELECT:
      goto L56550;
    case REG:
    case SUBREG:
      goto L66010;
    default:
      x1 = XEXP (x0, 0);
      goto L65915;
   }
 L66010: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L56588;
    }
  x1 = XEXP (x0, 0);
  goto L65915;

 L66011: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 56)
    goto L54663;
  x1 = XEXP (x0, 0);
  goto L65915;

 L54663: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (register_operand (x2, XFmode))
    {
      operands[1] = x2;
      goto L54664;
    }
  x1 = XEXP (x0, 0);
  goto L65915;

 L54664: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 15294 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_USE_FANCY_MATH_387
   && can_create_pseudo_p ()) && 
#line 15297 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( 1)))
    {
      return gen_split_5291 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65915;

 L56550: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L56551;
    }
  x1 = XEXP (x0, 0);
  goto L65915;

 L56551: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56552;
  x1 = XEXP (x0, 0);
  goto L65915;

 L56552: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 12710 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6847 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65915;

 L56588: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12823 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(can_create_pseudo_p ()
   && GET_CODE (operands[1]) == SUBREG
   && REG_P (SUBREG_REG (operands[1]))
   && (GET_MODE_CLASS (GET_MODE (SUBREG_REG (operands[1]))) == MODE_VECTOR_INT
       || (GET_MODE_CLASS (GET_MODE (SUBREG_REG (operands[1])))
	   == MODE_VECTOR_FLOAT))
   && SUBREG_BYTE (operands[1]) == 0
   && TARGET_SSE
   && (GET_MODE_SIZE (GET_MODE (SUBREG_REG (operands[1]))) == 16
       || (GET_MODE_SIZE (GET_MODE (SUBREG_REG (operands[1]))) == 32
	   && TARGET_AVX)
       || (GET_MODE_SIZE (GET_MODE (SUBREG_REG (operands[1]))) == 64
	   && TARGET_AVX512F))
   && (DImode == SImode || TARGET_64BIT || MEM_P (operands[0]))))
    {
      return gen_split_6853 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65915;

 L56576: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == VEC_SELECT)
    goto L56577;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56577: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, V2DImode))
    {
      operands[1] = x2;
      goto L56578;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56578: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 1)
    goto L56579;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56579: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_1_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L56580;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56580: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12810 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_6851 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65906: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V8QImode))
    {
      operands[0] = x1;
      goto L56185;
    }
  goto L53298;

 L56185: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, V8QImode))
    {
      operands[1] = x1;
      goto L56186;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56186: ATTRIBUTE_UNUSED_LABEL
  if (
#line 210 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))
   && !(MMX_REG_P (operands[1]) || SSE_REG_P (operands[1]))))
    {
      return gen_split_5544 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65907: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V4HImode))
    {
      operands[0] = x1;
      goto L56189;
    }
  goto L53298;

 L56189: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, V4HImode))
    {
      operands[1] = x1;
      goto L56190;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56190: ATTRIBUTE_UNUSED_LABEL
  if (
#line 210 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))
   && !(MMX_REG_P (operands[1]) || SSE_REG_P (operands[1]))))
    {
      return gen_split_5545 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65908: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2SImode))
    {
      operands[0] = x1;
      goto L56193;
    }
  goto L53298;

 L56193: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, V2SImode))
    {
      operands[1] = x1;
      goto L56194;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56194: ATTRIBUTE_UNUSED_LABEL
  if (
#line 210 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))
   && !(MMX_REG_P (operands[1]) || SSE_REG_P (operands[1]))))
    {
      return gen_split_5546 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65909: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V1DImode))
    {
      operands[0] = x1;
      goto L56197;
    }
  goto L53298;

 L56197: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, V1DImode))
    {
      operands[1] = x1;
      goto L56198;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56198: ATTRIBUTE_UNUSED_LABEL
  if (
#line 210 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))
   && !(MMX_REG_P (operands[1]) || SSE_REG_P (operands[1]))))
    {
      return gen_split_5547 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65910: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, V2SFmode))
    {
      operands[0] = x1;
      goto L56201;
    }
  goto L53298;

 L56201: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (general_operand (x1, V2SFmode))
    {
      operands[1] = x1;
      goto L56202;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56202: ATTRIBUTE_UNUSED_LABEL
  if (
#line 210 "../../gcc-5.1.0/gcc/config/i386/mmx.md"
(!TARGET_64BIT && reload_completed
   && !(MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))
   && !(MMX_REG_P (operands[1]) || SSE_REG_P (operands[1]))))
    {
      return gen_split_5548 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65912: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V4SFmode))
    {
      operands[0] = x1;
      goto L56237;
    }
  goto L53298;

 L56237: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (zero_extended_scalar_load_operand (x1, V4SFmode))
    {
      operands[1] = x1;
      goto L56238;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56238: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1100 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE && reload_completed))
    {
      return gen_split_5644 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65913: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, V2DFmode))
    {
      operands[0] = x1;
      goto L56241;
    }
  goto L53298;

 L56241: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == V2DFmode)
    goto L66012;
  x1 = XEXP (x0, 0);
  goto L53298;

 L66012: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case MEM:
      goto L66014;
    case VEC_SELECT:
      goto L56505;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L53298;

 L66014: ATTRIBUTE_UNUSED_LABEL
  if (zero_extended_scalar_load_operand (x1, V2DFmode))
    {
      operands[1] = x1;
      goto L56242;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56242: ATTRIBUTE_UNUSED_LABEL
  if (
#line 1114 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE2 && reload_completed))
    {
      return gen_split_5645 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56505: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == V4DFmode
      && GET_CODE (x2) == VEC_CONCAT)
    goto L56506;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56506: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (memory_operand (x3, V2DFmode))
    {
      operands[1] = x3;
      goto L56507;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56507: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[1]))
    goto L56508;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == PARALLEL
      && XVECLEN (x2, 0) == 2)
    goto L56509;
  x1 = XEXP (x0, 0);
  goto L53298;

 L56509: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (const_0_to_1_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L56510;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56510: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L56511;
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L56511: ATTRIBUTE_UNUSED_LABEL
  if (
#line 7642 "../../gcc-5.1.0/gcc/config/i386/sse.md"
(TARGET_SSE3 && INTVAL (operands[2]) + 2 == INTVAL (operands[3])))
    {
      return gen_split_6194 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53298;

 L65916: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L53299;
    }
 L65917: ATTRIBUTE_UNUSED_LABEL
  if (general_reg_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L55227;
    }
  goto L53081;

 L53299: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (compare_operator (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L53300;
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53300: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case ZERO_EXTRACT:
      goto L53301;
    case AND:
      goto L53309;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53301: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53302;
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53302: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L53303;
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53303: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[4] = x3;
      goto L53304;
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7628 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)))
    {
      return gen_split_4998 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53309: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53310;
    }
 L53316: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53317;
    }
 L55215: ATTRIBUTE_UNUSED_LABEL
  if (aligned_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L55216;
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L53310: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L53311;
    }
  x3 = XEXP (x2, 0);
  goto L53316;

 L53311: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7685 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && QI_REG_P (operands[2])
    && GET_MODE (operands[2]) != QImode
    && ((ix86_match_ccmode (insn, CCZmode)
    	 && !(INTVAL (operands[3]) & ~(255 << 8)))
	|| (ix86_match_ccmode (insn, CCNOmode)
	    && !(INTVAL (operands[3]) & ~(127 << 8))))))
    {
      return gen_split_4999 (insn, operands);
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L53316;

 L53317: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L53318;
    }
  x3 = XEXP (x2, 0);
  goto L55215;

 L53318: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 7708 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed
    && GET_MODE (operands[2]) != QImode
    && (!REG_P (operands[2]) || ANY_QI_REG_P (operands[2]))
    && ((ix86_match_ccmode (insn, CCZmode)
	 && !(INTVAL (operands[3]) & ~255))
	|| (ix86_match_ccmode (insn, CCNOmode)
	    && !(INTVAL (operands[3]) & ~127)))))
    {
      return gen_split_5000 (insn, operands);
    }
  x2 = XEXP (x1, 0);
  x3 = XEXP (x2, 0);
  goto L55215;

 L55216: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L55217;
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L55217: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17288 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL && reload_completed
   && ! TARGET_FAST_PREFIX
   && optimize_insn_for_speed_p ()
   /* Ensure that the operand will remain sign-extended immediate.  */
   && ix86_match_ccmode (insn, INTVAL (operands[3]) >= 0 ? CCNOmode : CCZmode)))
    {
      return gen_split_5415 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L65917;

 L55227: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_CODE (x1) == NOT)
    goto L55228;
  x1 = XEXP (x0, 0);
  goto L53081;

 L55228: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (general_reg_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55229;
    }
  x1 = XEXP (x0, 0);
  goto L53081;

 L55229: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17324 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL && reload_completed
   && (GET_MODE (operands[0]) == HImode
       || (GET_MODE (operands[0]) == QImode
	   && (TARGET_PROMOTE_QImode
	       || optimize_insn_for_size_p ())))))
    {
      return gen_split_5417 (insn, operands);
    }
  x1 = XEXP (x0, 0);
  goto L53081;

 L53082: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L53083;
    case IOR:
      goto L53109;
    case XOR:
      goto L53117;
    default:
     break;
   }
  goto ret0;

 L53083: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_CODE (x2))
    {
    case PLUS:
      goto L53100;
    case MULT:
      goto L53092;
    default:
     break;
   }
  goto ret0;

 L53100: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == MULT)
    goto L53101;
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53085;
    }
  goto ret0;

 L53101: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (index_register_operand (x4, VOIDmode))
    {
      operands[1] = x4;
      goto L53102;
    }
  goto ret0;

 L53102: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (const248_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L53103;
    }
  goto ret0;

 L53103: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L53104;
    }
  goto ret0;

 L53104: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (immediate_operand (x2, VOIDmode))
    {
      operands[4] = x2;
      goto L53105;
    }
  goto ret0;

 L53105: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6063 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
   && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && GET_MODE (operands[0]) == GET_MODE (operands[3])) && 
#line 6068 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4932 (insn, operands);
    }
  goto ret0;

 L53085: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (register_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53086;
    }
  goto ret0;

 L53086: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (immediate_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L53087;
    }
  goto ret0;

 L53087: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6000 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
   && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && GET_MODE (operands[0]) == GET_MODE (operands[2])
   && (GET_MODE (operands[0]) == GET_MODE (operands[3])
       || GET_MODE (operands[3]) == VOIDmode)) && 
#line 6007 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4930 (insn, operands);
    }
  goto ret0;

 L53092: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53093;
    }
  goto ret0;

 L53093: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const248_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53094;
    }
  goto ret0;

 L53094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (nonmemory_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L53095;
    }
  goto ret0;

 L53095: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6032 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
   && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && (GET_MODE (operands[0]) == GET_MODE (operands[3])
       || GET_MODE (operands[3]) == VOIDmode)) && 
#line 6038 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4931 (insn, operands);
    }
  goto ret0;

 L53109: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == ASHIFT)
    goto L53110;
  goto ret0;

 L53110: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53111;
    }
  goto ret0;

 L53111: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53112;
    }
  goto ret0;

 L53112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L53113;
    }
  goto ret0;

 L53113: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6098 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
      && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    || GET_MODE (operands[0]) == SImode
    || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[2])) - 1 < 3
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
       < ((unsigned HOST_WIDE_INT) 1 << INTVAL (operands[2])))) && 
#line 6107 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4933 (insn, operands);
    }
  goto ret0;

 L53117: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == ASHIFT)
    goto L53118;
  goto ret0;

 L53118: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (index_register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L53119;
    }
  goto ret0;

 L53119: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L53120;
    }
  goto ret0;

 L53120: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L53121;
    }
  goto ret0;

 L53121: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 6098 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((((GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode)
      && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    || GET_MODE (operands[0]) == SImode
    || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   && GET_MODE (operands[0]) == GET_MODE (operands[1])
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[2])) - 1 < 3
   && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
       < ((unsigned HOST_WIDE_INT) 1 << INTVAL (operands[2])))) && 
#line 6107 "../../gcc-5.1.0/gcc/config/i386/i386.md"
( reload_completed)))
    {
      return gen_split_4934 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

rtx
split_insns (rtx x0 ATTRIBUTE_UNUSED, rtx uncast_insn ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;
  recog_data.insn = NULL_RTX;
  rtx_insn *insn ATTRIBUTE_UNUSED;
  insn = safe_as_a <rtx_insn *> (uncast_insn);

  switch (GET_CODE (x0))
    {
    case PARALLEL:
      goto L65513;
    case SET:
      goto L52395;
    case EH_RETURN:
      goto L65517;
    default:
     break;
   }
  goto ret0;

 L65513: ATTRIBUTE_UNUSED_LABEL
  switch (XVECLEN (x0, 0))
    {
    case 2:
      goto L52254;
    case 3:
      goto L52508;
    case 4:
      goto L52653;
    case 5:
      goto L52797;
    default:
      break;
    }
  goto ret0;

 L52254: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L52255;
  goto ret0;

 L52255: ATTRIBUTE_UNUSED_LABEL
  return split_3 (x0, insn);

 L52508: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L52509;
  goto ret0;

 L52509: ATTRIBUTE_UNUSED_LABEL
  return split_6 (x0, insn);

 L52653: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L52654;
  goto ret0;

 L52654: ATTRIBUTE_UNUSED_LABEL
  return split_9 (x0, insn);

 L52797: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L52798;
  goto ret0;

 L52798: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DImode)
    goto L65835;
  goto ret0;

 L65835: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L52799;
    }
 L65836: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L52813;
    }
  goto ret0;

 L52799: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65837;
  x2 = XEXP (x1, 0);
  goto L65836;

 L65837: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52800;
    case UNSPEC:
      goto L65840;
    default:
     break;
   }
  x2 = XEXP (x1, 0);
  goto L65836;

 L52800: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52801;
    }
  x2 = XEXP (x1, 0);
  goto L65836;

 L52801: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52802;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52802: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52803;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52803: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L52804;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52804: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L52805;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52805: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52806;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52806: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L52807;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52807: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L52808;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52808: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[5] = x2;
      goto L52809;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52809: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4721 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4882 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L65840: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65842;
  x2 = XEXP (x1, 0);
  goto L65836;

 L65842: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54801;
    case 65LL:
      goto L54815;
    default:
      break;
    }
  x2 = XEXP (x1, 0);
  goto L65836;

 L54801: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54802;
    }
  x2 = XEXP (x1, 0);
  goto L65836;

 L54802: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54803;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54803: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54804;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54804: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54805;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54805: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54806;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54806: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54807;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54807: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L54808;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54808: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L54809;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54809: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[5] = x2;
      goto L54810;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54810: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15720 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5336 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54815: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54816;
    }
  x2 = XEXP (x1, 0);
  goto L65836;

 L54816: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54817;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54817: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54818;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54818: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54819;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54819: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54820;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54820: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54821;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54821: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L54822;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54822: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L54823;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54823: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[5] = x2;
      goto L54824;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L54824: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15720 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5337 (insn, operands);
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L65836;

 L52813: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L65844;
  goto ret0;

 L65844: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case FIX:
      goto L52814;
    case UNSPEC:
      goto L65847;
    default:
     break;
   }
  goto ret0;

 L52814: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L52815;
    }
  goto ret0;

 L52815: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L52816;
  goto ret0;

 L52816: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L52817;
    }
  goto ret0;

 L52817: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L52818;
  goto ret0;

 L52818: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L52819;
    }
  goto ret0;

 L52819: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L52820;
  goto ret0;

 L52820: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L52821;
    }
  goto ret0;

 L52821: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L52822;
  goto ret0;

 L52822: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[5] = x2;
      goto L52823;
    }
  goto ret0;

 L52823: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4735 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_4883 (insn, operands);
    }
  goto ret0;

 L65847: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x2, 0) == 1)
    goto L65849;
  goto ret0;

 L65849: ATTRIBUTE_UNUSED_LABEL
  switch (XINT (x2, 1))
    {
    case 64LL:
      goto L54829;
    case 65LL:
      goto L54843;
    default:
      break;
    }
  goto ret0;

 L54829: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54830;
    }
  goto ret0;

 L54830: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54831;
  goto ret0;

 L54831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54832;
    }
  goto ret0;

 L54832: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54833;
  goto ret0;

 L54833: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54834;
    }
  goto ret0;

 L54834: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54835;
  goto ret0;

 L54835: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L54836;
    }
  goto ret0;

 L54836: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L54837;
  goto ret0;

 L54837: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[5] = x2;
      goto L54838;
    }
  goto ret0;

 L54838: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15736 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5338 (insn, operands);
    }
  goto ret0;

 L54843: ATTRIBUTE_UNUSED_LABEL
  x3 = XVECEXP (x2, 0, 0);
  if (register_operand (x3, XFmode))
    {
      operands[1] = x3;
      goto L54844;
    }
  goto ret0;

 L54844: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54845;
  goto ret0;

 L54845: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[2] = x2;
      goto L54846;
    }
  goto ret0;

 L54846: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54847;
  goto ret0;

 L54847: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L54848;
    }
  goto ret0;

 L54848: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54849;
  goto ret0;

 L54849: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, DImode))
    {
      operands[4] = x2;
      goto L54850;
    }
  goto ret0;

 L54850: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L54851;
  goto ret0;

 L54851: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (scratch_operand (x2, VOIDmode))
    {
      operands[5] = x2;
      goto L54852;
    }
  goto ret0;

 L54852: ATTRIBUTE_UNUSED_LABEL
  if (
#line 15736 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(reload_completed))
    {
      return gen_split_5339 (insn, operands);
    }
  goto ret0;

 L52395: ATTRIBUTE_UNUSED_LABEL
  return split_10 (x0, insn);

 L65517: ATTRIBUTE_UNUSED_LABEL
  if (
#line 12299 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(epilogue_completed))
    {
      return gen_split_5183 (insn, operands);
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
peephole2_1 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *_pmatch_len ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  switch (GET_CODE (x0))
    {
    case SET:
      goto L54249;
    case PARALLEL:
      goto L66034;
    default:
     break;
   }
  goto ret0;

 L54249: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (GET_CODE (x1) == REG
      && XINT (x1, 0) == 17)
    goto L54250;
 L54330: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L66035;
    case DImode:
      goto L66036;
    default:
      break;
    }
  goto ret0;

 L54250: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  operands[0] = x1;
  goto L54251;

 L54251: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L54252;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54252: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L54253;
    }
  x1 = XEXP (x0, 0);
  goto L54330;

 L54253: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (ix86_comparison_operator (x2, QImode))
    {
      operands[2] = x2;
      goto L54254;
    }
  x1 = XEXP (x0, 0);
  goto L54330;

 L54254: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L54255;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54255: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54256;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54256: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L54257;
    case PARALLEL:
      goto L66037;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L54330;

 L54257: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (q_regs_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L54258;
    }
  x1 = XEXP (x0, 0);
  goto L54330;

 L54258: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == ZERO_EXTEND)
    goto L54259;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54259: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 11590 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((peep2_reg_dead_p (3, operands[1])
    || operands_match_p (operands[1], operands[3]))
   && ! reg_overlap_mentioned_p (operands[3], operands[0])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5151 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L54330;

 L66037: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L54285;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54285: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L54286;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54286: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (q_regs_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L54287;
    }
  x1 = XEXP (x0, 0);
  goto L54330;

 L54287: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == AND)
    goto L54288;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54288: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[3]))
    goto L54289;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54289: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_CODE (x4) == CONST_INT
      && XWINT (x4, 0) == 255LL)
    goto L54290;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54290: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L54291;
  x1 = XEXP (x0, 0);
  goto L54330;

 L54291: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17
      && 
#line 11633 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(REGNO (operands[1]) == REGNO (operands[3])
   && ! reg_overlap_mentioned_p (operands[3], operands[0])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5153 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L54330;

 L66035: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L54331;
    }
  goto ret0;

 L54331: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L54332;
    }
  goto ret0;

 L54332: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == UNSPEC_VOLATILE
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 0)
    goto L54333;
  goto ret0;

 L54333: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54334;
  goto ret0;

 L54334: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  switch (GET_CODE (x1))
    {
    case CALL:
      goto L54335;
    case PARALLEL:
      goto L66038;
    case SET:
      goto L54425;
    default:
     break;
   }
  goto ret0;

 L54335: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L54336;
  goto ret0;

 L54336: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L54337;
  goto ret0;

 L54337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[3] = x2;
  goto L54338;

 L54338: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11742 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (2))
   && peep2_reg_dead_p (3, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5159 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66038: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L54372;
  goto ret0;

 L54372: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_CODE (x2))
    {
    case CALL:
      goto L54373;
    case SET:
      goto L54469;
    default:
     break;
   }
  goto ret0;

 L54373: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L54374;
  goto ret0;

 L54374: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L54375;
  goto ret0;

 L54375: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54376;

 L54376: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L54377;
  goto ret0;

 L54377: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L54378;
  goto ret0;

 L54378: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L54379;
  goto ret0;

 L54379: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54380;
  goto ret0;

 L54380: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (immediate_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L54381;
    }
  goto ret0;

 L54381: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11819 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && SIBLING_CALL_P (peep2_next_insn (2))
   && peep2_reg_dead_p (3, operands[0])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5163 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L54469: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[2] = x3;
  goto L54470;

 L54470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CALL)
    goto L54471;
  goto ret0;

 L54471: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MEM)
    goto L54472;
  goto ret0;

 L54472: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[0]))
    goto L54473;
  goto ret0;

 L54473: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  operands[3] = x4;
  goto L54474;

 L54474: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L54475;
  goto ret0;

 L54475: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L54476;
  goto ret0;

 L54476: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L54477;
  goto ret0;

 L54477: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54478;
  goto ret0;

 L54478: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (immediate_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L54479;
    }
  goto ret0;

 L54479: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11994 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && SIBLING_CALL_P (peep2_next_insn (2))
   && peep2_reg_dead_p (3, operands[0])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5174 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L54425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L54426;

 L54426: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CALL)
    goto L54427;
  goto ret0;

 L54427: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L54428;
  goto ret0;

 L54428: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L54429;
  goto ret0;

 L54429: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54430;

 L54430: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11909 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (2))
   && peep2_reg_dead_p (3, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5170 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66036: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L54342;
    }
  goto ret0;

 L54342: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L54343;
    }
  goto ret0;

 L54343: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == UNSPEC_VOLATILE
      && XVECLEN (x1, 0) == 1
      && XINT (x1, 1) == 0)
    goto L54344;
  goto ret0;

 L54344: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54345;
  goto ret0;

 L54345: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  switch (GET_CODE (x1))
    {
    case CALL:
      goto L54346;
    case SET:
      goto L54438;
    default:
     break;
   }
  goto ret0;

 L54346: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L54347;
  goto ret0;

 L54347: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L54348;
  goto ret0;

 L54348: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[3] = x2;
  goto L54349;

 L54349: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11742 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (2))
   && peep2_reg_dead_p (3, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5160 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L54438: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  operands[2] = x2;
  goto L54439;

 L54439: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CALL)
    goto L54440;
  goto ret0;

 L54440: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L54441;
  goto ret0;

 L54441: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L54442;
  goto ret0;

 L54442: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54443;

 L54443: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11909 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (2))
   && peep2_reg_dead_p (3, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5171 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66034: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x0, 0) == 2)
    goto L54262;
  goto ret0;

 L54262: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L54263;
  goto ret0;

 L54263: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54264;
  goto ret0;

 L54264: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[0] = x2;
  goto L54265;

 L54265: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  operands[4] = x1;
  goto L54266;

 L54266: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L54267;
  goto ret0;

 L54267: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L54268;
    }
  goto ret0;

 L54268: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (ix86_comparison_operator (x2, QImode))
    {
      operands[2] = x2;
      goto L54269;
    }
  goto ret0;

 L54269: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L54270;
  goto ret0;

 L54270: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54271;
  goto ret0;

 L54271: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  switch (GET_CODE (x1))
    {
    case SET:
      goto L54272;
    case PARALLEL:
      goto L66039;
    default:
     break;
   }
  goto ret0;

 L54272: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (q_regs_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L54273;
    }
  goto ret0;

 L54273: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == ZERO_EXTEND)
    goto L54274;
  goto ret0;

 L54274: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1])
      && 
#line 11610 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((peep2_reg_dead_p (3, operands[1])
    || operands_match_p (operands[1], operands[3]))
   && ! reg_overlap_mentioned_p (operands[3], operands[0])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5152 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66039: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L54304;
  goto ret0;

 L54304: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L54305;
  goto ret0;

 L54305: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (q_regs_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L54306;
    }
  goto ret0;

 L54306: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == ZERO_EXTEND)
    goto L54307;
  goto ret0;

 L54307: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L54308;
  goto ret0;

 L54308: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L54309;
  goto ret0;

 L54309: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17
      && 
#line 11653 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((peep2_reg_dead_p (3, operands[1])
    || operands_match_p (operands[1], operands[3]))
   && ! reg_overlap_mentioned_p (operands[3], operands[0])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5154 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
peephole2_2 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *_pmatch_len ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case HImode:
      goto L66048;
    case SImode:
      goto L66049;
    case DImode:
      goto L66050;
    case SFmode:
      goto L66046;
    case QImode:
      goto L66047;
    default:
      break;
    }
 L55284: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L55285;
    }
  goto ret0;

 L66048: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L55238;
    }
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L55080;
    }
 L66053: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L55262;
    }
 L66056: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L55297;
    }
  goto L55284;

 L55238: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L55239;
    }
  x1 = XEXP (x0, 0);
  goto L66053;

 L55239: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17344 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_PUSH_MEMORY || optimize_insn_for_size_p ())
   && !RTX_FRAME_RELATED_P (peep2_next_insn (0))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5419 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66053;

 L55080: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L55081;
  x1 = XEXP (x0, 0);
  goto L66053;

 L55081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55082;
    }
  x1 = XEXP (x0, 0);
  goto L66053;

 L55082: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55083;
  x1 = XEXP (x0, 0);
  goto L66053;

 L55083: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55084;
  x1 = XEXP (x0, 0);
  goto L66053;

 L55084: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55085;
 L55114: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L55115;
    }
  x1 = XEXP (x0, 0);
  goto L66053;

 L55085: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (memory_operand (x2, HImode))
    {
      operands[3] = x2;
      goto L55086;
    }
  x2 = XEXP (x1, 1);
  goto L55114;

 L55086: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16800 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5392 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L55114;

 L55115: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 16813 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5395 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66053;

 L55262: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17366 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((HImode == HImode
       && TARGET_LCP_STALL)
       || (!TARGET_USE_MOV0
          && TARGET_SPLIT_LONG_MOVES
          && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5424 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L55275: ATTRIBUTE_UNUSED_LABEL
  if (immediate_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L55276;
    }
  x1 = XEXP (x0, 0);
  goto L66056;

 L55276: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17382 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((HImode == HImode
       && TARGET_LCP_STALL)
       || (TARGET_SPLIT_LONG_MOVES
          && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5427 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66056;

 L55297: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == HImode
      && GET_CODE (x1) == NOT)
    goto L55298;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55298: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, HImode))
    {
      operands[1] = x2;
      goto L55299;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55299: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((TARGET_NOT_UNPAIRABLE
	&& (!MEM_P (operands[0])
	    || !memory_displacement_operand (operands[0], HImode)))
       || (TARGET_NOT_VECTORMODE
	   && long_memory_operand (operands[0], HImode)))
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5431 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L66049: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55243;
    }
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55090;
    }
 L66054: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55266;
    }
 L66057: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55303;
    }
  goto L55284;

 L55243: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L55244;
    }
  x1 = XEXP (x0, 0);
  goto L66054;

 L55244: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17344 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_PUSH_MEMORY || optimize_insn_for_size_p ())
   && !RTX_FRAME_RELATED_P (peep2_next_insn (0))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5420 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66054;

 L55090: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L55091;
  x1 = XEXP (x0, 0);
  goto L66054;

 L55091: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55092;
    }
  x1 = XEXP (x0, 0);
  goto L66054;

 L55092: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55093;
  x1 = XEXP (x0, 0);
  goto L66054;

 L55093: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55094;
  x1 = XEXP (x0, 0);
  goto L66054;

 L55094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55095;
 L55123: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L55124;
    }
  x1 = XEXP (x0, 0);
  goto L66054;

 L55095: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (memory_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L55096;
    }
  x2 = XEXP (x1, 1);
  goto L55123;

 L55096: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16800 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5393 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L55123;

 L55124: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 16813 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5396 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66054;

 L55266: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17366 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((SImode == HImode
       && TARGET_LCP_STALL)
       || (!TARGET_USE_MOV0
          && TARGET_SPLIT_LONG_MOVES
          && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5425 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L55280: ATTRIBUTE_UNUSED_LABEL
  if (immediate_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L55281;
    }
  x1 = XEXP (x0, 0);
  goto L66057;

 L55281: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17382 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((SImode == HImode
       && TARGET_LCP_STALL)
       || (TARGET_SPLIT_LONG_MOVES
          && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5428 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66057;

 L55303: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == NOT)
    goto L55304;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55304: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L55305;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55305: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((TARGET_NOT_UNPAIRABLE
	&& (!MEM_P (operands[0])
	    || !memory_displacement_operand (operands[0], SImode)))
       || (TARGET_NOT_VECTORMODE
	   && long_memory_operand (operands[0], SImode)))
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5432 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L66050: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L55248;
    }
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L55100;
    }
  goto L55284;

 L55248: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L55249;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55249: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17344 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_PUSH_MEMORY || optimize_insn_for_size_p ())
   && !RTX_FRAME_RELATED_P (peep2_next_insn (0))) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5421 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55100: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L55101;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55101: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (ix86_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55102;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55102: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55103;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55103: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55104;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55104: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55105;
 L55132: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L55133;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55105: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (memory_operand (x2, DImode))
    {
      operands[3] = x2;
      goto L55106;
    }
  x2 = XEXP (x1, 1);
  goto L55132;

 L55106: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 16800 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()) && 
#line 955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5394 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L55132;

 L55133: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 16813 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()) && 
#line 955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5397 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L66046: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case REG:
      goto L66058;
    case MEM:
      goto L66059;
    default:
     break;
   }
  goto L55284;

 L66058: ATTRIBUTE_UNUSED_LABEL
  if (register_and_not_any_fp_reg_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L55164;
    }
  goto L55284;

 L55164: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == IF_THEN_ELSE)
    goto L55165;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55165: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (fcmov_comparison_operator (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55166;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55166: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55167;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55167: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55168;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55168: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55169;
 L55178: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L55179;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55169: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (memory_operand (x2, SFmode))
    {
      operands[3] = x2;
      goto L55170;
    }
  x2 = XEXP (x1, 1);
  goto L55178;

 L55170: ATTRIBUTE_UNUSED_LABEL
  if (
#line 16925 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SFmode != DFmode || TARGET_64BIT)
   && TARGET_80387 && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5404 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 1);
  goto L55178;

 L55179: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 2);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 16940 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((SFmode != DFmode || TARGET_64BIT)
   && TARGET_80387 && TARGET_CMOVE
   && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5405 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L66059: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L55253;
    }
  goto L55284;

 L55253: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, SFmode))
    {
      operands[1] = x1;
      goto L55254;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55254: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17355 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_PUSH_MEMORY || optimize_insn_for_size_p ())
   && !RTX_FRAME_RELATED_P (peep2_next_insn (0))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5422 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L66047: ATTRIBUTE_UNUSED_LABEL
  if (push_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L55233;
    }
 L66052: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L55258;
    }
 L66055: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L55291;
    }
  goto L55284;

 L55233: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L55234;
    }
  x1 = XEXP (x0, 0);
  goto L66052;

 L55234: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17344 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_PUSH_MEMORY || optimize_insn_for_size_p ())
   && !RTX_FRAME_RELATED_P (peep2_next_insn (0))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5418 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66052;

 L55258: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17366 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((QImode == HImode
       && TARGET_LCP_STALL)
       || (!TARGET_USE_MOV0
          && TARGET_SPLIT_LONG_MOVES
          && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5423 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L55270: ATTRIBUTE_UNUSED_LABEL
  if (immediate_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L55271;
    }
  x1 = XEXP (x0, 0);
  goto L66055;

 L55271: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17382 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((QImode == HImode
       && TARGET_LCP_STALL)
       || (TARGET_SPLIT_LONG_MOVES
          && get_attr_length (insn) >= ix86_cur_cost ()->large_insn))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5426 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L66055;

 L55291: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == QImode
      && GET_CODE (x1) == NOT)
    goto L55292;
  x1 = XEXP (x0, 0);
  goto L55284;

 L55292: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (nonimmediate_operand (x2, QImode))
    {
      operands[1] = x2;
      goto L55293;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55293: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17415 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && ((TARGET_NOT_UNPAIRABLE
	&& (!MEM_P (operands[0])
	    || !memory_displacement_operand (operands[0], QImode)))
       || (TARGET_NOT_VECTORMODE
	   && long_memory_operand (operands[0], QImode)))
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5430 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55284;

 L55285: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (compare_operator (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L55286;
    }
  goto ret0;

 L55286: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L66061;
    case QImode:
      goto L66062;
    default:
      break;
    }
  goto ret0;

 L66061: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == AND)
    goto L55311;
  if (memory_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L55287;
    }
  goto ret0;

 L55311: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L66064;
  goto ret0;

 L66064: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == ZERO_EXTRACT)
    goto L55328;
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L55312;
    }
  goto ret0;

 L55328: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (ext_register_operand (x4, VOIDmode))
    {
      operands[2] = x4;
      goto L55329;
    }
  goto ret0;

 L55329: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L55330;
  goto ret0;

 L55330: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 2);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (8)])
    goto L55331;
  goto ret0;

 L55331: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L55332;
    }
  goto ret0;

 L55332: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17480 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL
   && ix86_match_ccmode (insn, CCNOmode)
   && true_regnum (operands[2]) != AX_REG
   && peep2_reg_dead_p (1, operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5435 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L55312: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L55313;
    }
  goto ret0;

 L55313: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17439 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(ix86_match_ccmode (insn, CCNOmode)
   && (true_regnum (operands[2]) != AX_REG
       || satisfies_constraint_K (operands[3]))
   && peep2_reg_dead_p (1, operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5433 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L55287: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17397 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p () && ix86_match_ccmode (insn, CCNOmode)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5429 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66062: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == AND)
    goto L55319;
  goto ret0;

 L55319: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L55320;
    }
  goto ret0;

 L55320: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L55321;
    }
  goto ret0;

 L55321: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x2 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17459 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(! TARGET_PARTIAL_REG_STALL
   && ix86_match_ccmode (insn, CCNOmode)
   && true_regnum (operands[2]) != AX_REG
   && peep2_reg_dead_p (1, operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5434 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
peephole2_3 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *_pmatch_len ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case QImode:
      goto L66067;
    case HImode:
      goto L66068;
    case SImode:
      goto L66069;
    case DImode:
      goto L66070;
    default:
      break;
    }
  goto ret0;

 L66067: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L55394;
    }
  goto ret0;

 L55394: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, QImode))
    {
      operands[1] = x1;
      goto L55395;
    }
  goto ret0;

 L55395: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L55396;
  goto ret0;

 L55396: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L55545;
  goto ret0;

 L55545: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L55546;
    }
 L55397: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[0]))
    goto L55398;
  goto ret0;

 L55546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (plusminuslogic_operator (x3, SImode))
    {
      operands[3] = x3;
      goto L55547;
    }
  x3 = XEXP (x2, 0);
  goto L55397;

 L55547: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[4]))
    goto L55548;
  x3 = XEXP (x2, 0);
  goto L55397;

 L55548: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L55549;
    }
  x3 = XEXP (x2, 0);
  goto L55397;

 L55549: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55550;
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55550: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55551;
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55551: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55552;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55552: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55553;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55553: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55554;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55554: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55555;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55555: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55556;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55556: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55557;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55557: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55558;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55558: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17674 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && REG_P (operands[0]) && REG_P (operands[4])
   && REGNO (operands[0]) == REGNO (operands[4])
   && peep2_reg_dead_p (4, operands[0])
   && (QImode != QImode
       || immediate_operand (operands[2], SImode)
       || q_regs_operand (operands[2], SImode))
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && !reg_overlap_mentioned_p (operands[0], operands[2])
   && ix86_match_ccmode (peep2_next_insn (3),
			 (GET_CODE (operands[3]) == PLUS
			  || GET_CODE (operands[3]) == MINUS)
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5450 (insn, operands);
      if (tem != 0)
        return tem;
    }
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55397;

 L55398: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (plusminuslogic_operator (x3, QImode))
    {
      operands[3] = x3;
      goto L55399;
    }
  goto ret0;

 L55399: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L55400;
  goto ret0;

 L55400: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, QImode))
    {
      operands[2] = x4;
      goto L55401;
    }
  goto ret0;

 L55401: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55402;
  goto ret0;

 L55402: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55403;
  goto ret0;

 L55403: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55404;
  goto ret0;

 L55404: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55405;
  goto ret0;

 L55405: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55406;
  goto ret0;

 L55406: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55407;
  goto ret0;

 L55407: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55408;
  goto ret0;

 L55408: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55409;
  goto ret0;

 L55409: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55410;
  goto ret0;

 L55410: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17614 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && peep2_reg_dead_p (4, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && !reg_overlap_mentioned_p (operands[0], operands[2])
   && (QImode != QImode
       || immediate_operand (operands[2], QImode)
       || q_regs_operand (operands[2], QImode))
   && ix86_match_ccmode (peep2_next_insn (3),
			 (GET_CODE (operands[3]) == PLUS
			  || GET_CODE (operands[3]) == MINUS)
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5442 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66068: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L55414;
    }
  goto ret0;

 L55414: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, HImode))
    {
      operands[1] = x1;
      goto L55415;
    }
  goto ret0;

 L55415: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L55416;
  goto ret0;

 L55416: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L55565;
  goto ret0;

 L55565: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[4] = x3;
      goto L55566;
    }
 L55417: ATTRIBUTE_UNUSED_LABEL
  if (rtx_equal_p (x3, operands[0]))
    goto L55418;
  goto ret0;

 L55566: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (plusminuslogic_operator (x3, SImode))
    {
      operands[3] = x3;
      goto L55567;
    }
  x3 = XEXP (x2, 0);
  goto L55417;

 L55567: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[4]))
    goto L55568;
  x3 = XEXP (x2, 0);
  goto L55417;

 L55568: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L55569;
    }
  x3 = XEXP (x2, 0);
  goto L55417;

 L55569: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55570;
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55570: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55571;
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55571: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55572;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55572: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55573;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55573: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55574;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55574: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55575;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55575: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55576;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55576: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55577;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55577: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55578;
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55578: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17674 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && REG_P (operands[0]) && REG_P (operands[4])
   && REGNO (operands[0]) == REGNO (operands[4])
   && peep2_reg_dead_p (4, operands[0])
   && (HImode != QImode
       || immediate_operand (operands[2], SImode)
       || q_regs_operand (operands[2], SImode))
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && !reg_overlap_mentioned_p (operands[0], operands[2])
   && ix86_match_ccmode (peep2_next_insn (3),
			 (GET_CODE (operands[3]) == PLUS
			  || GET_CODE (operands[3]) == MINUS)
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5451 (insn, operands);
      if (tem != 0)
        return tem;
    }
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  x2 = XVECEXP (x1, 0, 0);
  x3 = XEXP (x2, 0);
  goto L55417;

 L55418: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (plusminuslogic_operator (x3, HImode))
    {
      operands[3] = x3;
      goto L55419;
    }
  goto ret0;

 L55419: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L55420;
  goto ret0;

 L55420: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (nonmemory_operand (x4, HImode))
    {
      operands[2] = x4;
      goto L55421;
    }
  goto ret0;

 L55421: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55422;
  goto ret0;

 L55422: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55423;
  goto ret0;

 L55423: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55424;
  goto ret0;

 L55424: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55425;
  goto ret0;

 L55425: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55426;
  goto ret0;

 L55426: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55427;
  goto ret0;

 L55427: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55428;
  goto ret0;

 L55428: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55429;
  goto ret0;

 L55429: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55430;
  goto ret0;

 L55430: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17614 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && peep2_reg_dead_p (4, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && !reg_overlap_mentioned_p (operands[0], operands[2])
   && (HImode != QImode
       || immediate_operand (operands[2], QImode)
       || q_regs_operand (operands[2], QImode))
   && ix86_match_ccmode (peep2_next_insn (3),
			 (GET_CODE (operands[3]) == PLUS
			  || GET_CODE (operands[3]) == MINUS)
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5443 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66069: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55434;
    }
  goto ret0;

 L55434: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L55435;
    }
  goto ret0;

 L55435: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L55436;
  goto ret0;

 L55436: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L55437;
  goto ret0;

 L55437: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55438;
  goto ret0;

 L55438: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (plusminuslogic_operator (x3, SImode))
    {
      operands[3] = x3;
      goto L55439;
    }
  goto ret0;

 L55439: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L55440;
  goto ret0;

 L55440: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_nonmemory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L55441;
    }
  goto ret0;

 L55441: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55442;
  goto ret0;

 L55442: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55443;
  goto ret0;

 L55443: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55444;
  goto ret0;

 L55444: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55445;
  goto ret0;

 L55445: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55446;
  goto ret0;

 L55446: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55447;
  goto ret0;

 L55447: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55448;
  goto ret0;

 L55448: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55449;
  goto ret0;

 L55449: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55450;
  goto ret0;

 L55450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17614 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && peep2_reg_dead_p (4, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && !reg_overlap_mentioned_p (operands[0], operands[2])
   && (SImode != QImode
       || immediate_operand (operands[2], QImode)
       || q_regs_operand (operands[2], QImode))
   && ix86_match_ccmode (peep2_next_insn (3),
			 (GET_CODE (operands[3]) == PLUS
			  || GET_CODE (operands[3]) == MINUS)
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5444 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66070: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L55454;
    }
  goto ret0;

 L55454: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L55455;
    }
  goto ret0;

 L55455: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L55456;
  goto ret0;

 L55456: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L55457;
  goto ret0;

 L55457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55458;
  goto ret0;

 L55458: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (plusminuslogic_operator (x3, DImode))
    {
      operands[3] = x3;
      goto L55459;
    }
  goto ret0;

 L55459: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L55460;
  goto ret0;

 L55460: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_nonmemory_operand (x4, DImode))
    {
      operands[2] = x4;
      goto L55461;
    }
  goto ret0;

 L55461: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55462;
  goto ret0;

 L55462: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55463;
  goto ret0;

 L55463: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55464;
  goto ret0;

 L55464: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55465;
  goto ret0;

 L55465: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55466;
  goto ret0;

 L55466: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55467;
  goto ret0;

 L55467: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55468;
  goto ret0;

 L55468: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55469;
  goto ret0;

 L55469: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55470;
  goto ret0;

 L55470: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 17614 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && peep2_reg_dead_p (4, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && !reg_overlap_mentioned_p (operands[0], operands[2])
   && (DImode != QImode
       || immediate_operand (operands[2], QImode)
       || q_regs_operand (operands[2], QImode))
   && ix86_match_ccmode (peep2_next_insn (3),
			 (GET_CODE (operands[3]) == PLUS
			  || GET_CODE (operands[3]) == MINUS)
			 ? CCGOCmode : CCNOmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5445 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;
 ret0:
  return 0;
}

static rtx
peephole2_4 (rtx x0 ATTRIBUTE_UNUSED,
	rtx_insn *insn ATTRIBUTE_UNUSED,
	int *_pmatch_len ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;

  switch (XVECLEN (x0, 0))
    {
    case 3:
      goto L55643;
    case 2:
      goto L55739;
    default:
      break;
    }
  goto ret0;

 L55643: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L55644;
  goto ret0;

 L55644: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L66087;
    case DImode:
      goto L66088;
    default:
      break;
    }
  goto ret0;

 L66087: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L55645;
  goto ret0;

 L55645: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L55646;
  goto ret0;

 L55646: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L55647;
  goto ret0;

 L55647: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L55648;
    }
  goto ret0;

 L55648: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55649;
  goto ret0;

 L55649: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55650;
  goto ret0;

 L55650: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L55651;
  goto ret0;

 L55651: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L55652;
  goto ret0;

 L55652: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L66089;
  goto ret0;

 L66089: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17834 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5463 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66090: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17834 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5465 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66091: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17847 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5467 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66092: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17847 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5469 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66093: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17886 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5479 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66094: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17886 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5481 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66095: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17901 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5483 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66096: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17901 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5485 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66097: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5487 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66098: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5489 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66088: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L55657;
  goto ret0;

 L55657: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L55658;
  goto ret0;

 L55658: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L55659;
  goto ret0;

 L55659: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L55660;
    }
  goto ret0;

 L55660: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55661;
  goto ret0;

 L55661: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55662;
  goto ret0;

 L55662: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == CLOBBER)
    goto L55663;
  goto ret0;

 L55663: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == BLKmode
      && GET_CODE (x2) == MEM)
    goto L55664;
  goto ret0;

 L55664: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == SCRATCH)
    goto L66099;
  goto ret0;

 L66099: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17834 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5464 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66100: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17834 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5466 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66101: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17847 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5468 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66102: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17847 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5470 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66103: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17886 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5480 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66104: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17886 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5482 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66105: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17901 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5484 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66106: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17901 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_POP || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5486 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66107: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5488 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66108: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17914 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5490 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L55739: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L55740;
  goto ret0;

 L55740: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L66109;
    case DImode:
      goto L66110;
    case HImode:
      goto L66113;
    default:
      break;
    }
  goto ret0;

 L66109: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L55741;
 L66111: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L56072;
    }
  goto ret0;

 L55741: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == PLUS)
    goto L55742;
  x2 = XEXP (x1, 0);
  goto L66111;

 L55742: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L55743;
  x2 = XEXP (x1, 0);
  goto L66111;

 L55743: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[0] = x3;
      goto L55744;
    }
  x2 = XEXP (x1, 0);
  goto L66111;

 L55744: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55745;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66111;

 L55745: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L66114;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66111;

 L66114: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L66124;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66111;

 L66124: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L66134;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66111;

 L66134: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17861 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5471 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66135: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17861 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5473 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66136: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17872 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5475 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66137: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17872 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5477 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66138: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17927 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5491 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66139: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17927 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5493 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66140: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17939 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5495 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66141: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17939 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5497 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66142: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5499 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66143: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == SImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5501 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66111;

 L56072: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == SImode
      && GET_CODE (x2) == MULT)
    goto L56073;
  goto ret0;

 L56073: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode)
    goto L66144;
  goto ret0;

 L66144: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L56074;
    }
 L66145: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L56092;
    }
 L66146: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L56110;
    }
 L66147: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L56137;
    }
  goto ret0;

 L56074: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const359_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L56075;
    }
  x3 = XEXP (x2, 0);
  goto L66145;

 L56075: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56076;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66145;

 L56076: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5504 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66145;

 L56092: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const359_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L56093;
    }
  x3 = XEXP (x2, 0);
  goto L66146;

 L56093: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56094;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66146;

 L56094: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17992 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && (!TARGET_PARTIAL_REG_STALL || SImode == SImode)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5506 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66146;

 L56110: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L56111;
    }
  x3 = XEXP (x2, 0);
  goto L66147;

 L56111: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56112;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66147;

 L56112: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 18008 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SLOW_IMUL_IMM32_MEM && optimize_insn_for_speed_p ()
   && !satisfies_constraint_K (operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5508 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66147;

 L56137: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L56138;
    }
  goto ret0;

 L56138: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56139;
  goto ret0;

 L56139: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 18040 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SLOW_IMUL_IMM8 && optimize_insn_for_speed_p ()
   && satisfies_constraint_K (operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5511 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66110: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 7)
    goto L55750;
 L66112: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L56081;
    }
  goto ret0;

 L55750: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == PLUS)
    goto L55751;
  x2 = XEXP (x1, 0);
  goto L66112;

 L55751: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L55752;
  x2 = XEXP (x1, 0);
  goto L66112;

 L55752: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[0] = x3;
      goto L55753;
    }
  x2 = XEXP (x1, 0);
  goto L66112;

 L55753: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55754;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66112;

 L55754: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode)
    goto L66148;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66112;

 L66148: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x2) == REG)
    goto L66158;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66112;

 L66158: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x2, 0) == 17)
    goto L66168;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66112;

 L66168: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17861 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5472 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66169: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17861 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5474 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66170: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17872 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5476 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66171: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17872 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5478 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66172: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17927 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5492 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66173: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17927 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5494 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66174: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17939 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5496 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66175: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17939 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5498 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66176: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5500 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66177: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17949 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_size_p ()
   && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode)) && 
#line 1138 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(Pmode == DImode))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5502 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 0);
  goto L66112;

 L56081: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode
      && GET_CODE (x2) == MULT)
    goto L56082;
  goto ret0;

 L56082: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == DImode)
    goto L66178;
  goto ret0;

 L66178: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56083;
    }
 L66179: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56101;
    }
 L66180: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56119;
    }
 L66181: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L56146;
    }
  goto ret0;

 L56083: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const359_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L56084;
    }
  x3 = XEXP (x2, 0);
  goto L66179;

 L56084: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56085;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66179;

 L56085: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 17978 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_PARTIAL_REG_STALL
   || DImode == SImode
   || optimize_function_for_size_p (cfun)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5505 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66179;

 L56101: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const359_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L56102;
    }
  x3 = XEXP (x2, 0);
  goto L66180;

 L56102: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56103;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66180;

 L56103: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 17992 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(optimize_insn_for_speed_p ()
   && (!TARGET_PARTIAL_REG_STALL || DImode == SImode)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5507 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66180;

 L56119: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (immediate_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L56120;
    }
  x3 = XEXP (x2, 0);
  goto L66181;

 L56120: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56121;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66181;

 L56121: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 18008 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SLOW_IMUL_IMM32_MEM && optimize_insn_for_speed_p ()
   && !satisfies_constraint_K (operands[2])) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5509 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L66181;

 L56146: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[2] = x3;
      goto L56147;
    }
  goto ret0;

 L56147: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56148;
  goto ret0;

 L56148: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 18040 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SLOW_IMUL_IMM8 && optimize_insn_for_speed_p ()
   && satisfies_constraint_K (operands[2])) && 
#line 955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5512 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66113: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L56126;
    }
  goto ret0;

 L56126: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == HImode
      && GET_CODE (x2) == MULT)
    goto L56127;
  goto ret0;

 L56127: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonimmediate_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L56128;
    }
  goto ret0;

 L56128: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[2] = x3;
      goto L56129;
    }
  goto ret0;

 L56129: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56130;
  goto ret0;

 L56130: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 18040 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SLOW_IMUL_IMM8 && optimize_insn_for_speed_p ()
   && satisfies_constraint_K (operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5510 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;
 ret0:
  return 0;
}

rtx
peephole2_insns (rtx x0 ATTRIBUTE_UNUSED,
	rtx uncast_insn ATTRIBUTE_UNUSED,
	int *_pmatch_len ATTRIBUTE_UNUSED)
{
  rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
  rtx x1 ATTRIBUTE_UNUSED;
  rtx x2 ATTRIBUTE_UNUSED;
  rtx x3 ATTRIBUTE_UNUSED;
  rtx x4 ATTRIBUTE_UNUSED;
  rtx x5 ATTRIBUTE_UNUSED;
  rtx x6 ATTRIBUTE_UNUSED;
  rtx x7 ATTRIBUTE_UNUSED;
  rtx x8 ATTRIBUTE_UNUSED;
  rtx tem ATTRIBUTE_UNUSED;
  recog_data.insn = NULL_RTX;
  rtx_insn *insn ATTRIBUTE_UNUSED;
  insn = safe_as_a <rtx_insn *> (uncast_insn);

  if (peep2_current_count >= 4)
    goto L52518;
 L52535: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 3)
    goto L52536;
 L52596: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L52597;
 L54959: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 4)
    goto L54960;
 L53736: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 2)
    goto L53737;
 L54247: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 3)
    goto L54248;
 L54310: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 2)
    goto L54311;
 L55078: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L55079;
 L55471: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 3)
    goto L55472;
 L55334: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 2)
    goto L55335;
 L55351: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 2)
    goto L55352;
 L55374: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 2)
    goto L55375;
 L55391: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 4)
    goto L55392;
 L55505: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 3)
    goto L55506;
 L55580: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L55586;
 L56149: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 2)
    goto L56150;
 L55642: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL)
    goto L66015;
 L56812: ATTRIBUTE_UNUSED_LABEL
  if (peep2_current_count >= 3)
    goto L56813;
  goto ret0;

 L52518: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L52519;
  goto L52535;

 L52519: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L52520;
    }
  goto L52535;

 L52520: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L52521;
    }
  goto L52535;

 L52521: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L52522;
  goto L52535;

 L52522: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[2] = x2;
      goto L52523;
    }
  goto L52535;

 L52523: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[1]))
    goto L52524;
  goto L52535;

 L52524: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L52525;
  goto L52535;

 L52525: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L52526;
  goto L52535;

 L52526: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[2]))
    goto L52527;
  goto L52535;

 L52527: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ASHIFTRT)
    goto L52528;
  goto L52535;

 L52528: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[2]))
    goto L52529;
  goto L52535;

 L52529: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L52530;
  goto L52535;

 L52530: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L52531;
  goto L52535;

 L52531: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L52532;
  goto L52535;

 L52532: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L52533;
  goto L52535;

 L52533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L52534;
    }
  goto L52535;

 L52534: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[2])
      && 
#line 3786 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(REGNO (operands[1]) != REGNO (operands[2])
   && peep2_reg_dead_p (2, operands[1])
   && peep2_reg_dead_p (4, operands[2])
   && !reg_mentioned_p (operands[2], operands[3])))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_4826 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L52535;

 L52536: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L52537;
  goto L52596;

 L52537: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (memory_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L52538;
    }
  goto L52596;

 L52538: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L52539;
    }
  goto L52596;

 L52539: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L52540;
  goto L52596;

 L52540: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L52541;
  goto L52596;

 L52541: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, SImode))
    {
      operands[2] = x3;
      goto L52542;
    }
  goto L52596;

 L52542: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == ASHIFTRT)
    goto L52543;
  goto L52596;

 L52543: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L52544;
  goto L52596;

 L52544: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (31)])
    goto L52545;
  goto L52596;

 L52545: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L52546;
  goto L52596;

 L52546: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L52547;
  goto L52596;

 L52547: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L52548;
  goto L52596;

 L52548: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L52549;
    }
  goto L52596;

 L52549: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[2])
      && 
#line 3802 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(/* cltd is shorter than sarl $31, %eax */
   !optimize_function_for_size_p (cfun)
   && true_regnum (operands[1]) == AX_REG
   && true_regnum (operands[2]) == DX_REG
   && peep2_reg_dead_p (2, operands[1])
   && peep2_reg_dead_p (3, operands[2])
   && !reg_mentioned_p (operands[2], operands[3])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_4827 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L52596;

 L52597: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case DFmode:
      goto L66017;
    case SFmode:
      goto L66018;
    case SImode:
      goto L66019;
    case DImode:
      goto L66020;
    default:
      break;
    }
  goto L54959;

 L66017: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DFmode))
    {
      operands[0] = x1;
      goto L52598;
    }
  goto L54959;

 L52598: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DFmode
      && GET_CODE (x1) == FLOAT_EXTEND)
    goto L52599;
  goto L54959;

 L52599: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == SFmode)
    goto L66021;
  goto L54959;

 L66021: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52600;
    }
 L66022: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52913;
    }
  goto L54959;

 L52600: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4043 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SPLIT_MEM_OPND_FOR_FP_CONVERTS
   && optimize_insn_for_speed_p ()
   && SSE_REG_P (operands[0])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4837 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L66022;

 L52913: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4992 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_SSE_PARTIAL_REG_DEPENDENCY
   && optimize_function_for_speed_p (cfun)
   && SSE_REG_P (operands[0])
   && (!SSE_REG_P (operands[1])
       || REGNO (operands[0]) != REGNO (operands[1]))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4897 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54959;

 L66018: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SFmode))
    {
      operands[0] = x1;
      goto L52609;
    }
  goto L54959;

 L52609: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SFmode
      && GET_CODE (x1) == FLOAT_TRUNCATE)
    goto L52610;
  goto L54959;

 L52610: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == DFmode)
    goto L66023;
  goto L54959;

 L66023: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L52611;
    }
 L66024: ATTRIBUTE_UNUSED_LABEL
  if (nonimmediate_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L52907;
    }
  goto L54959;

 L52611: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4196 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SPLIT_MEM_OPND_FOR_FP_CONVERTS
   && optimize_insn_for_speed_p ()
   && SSE_REG_P (operands[0])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4842 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L66024;

 L52907: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4965 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_SSE2 && TARGET_SSE_MATH
   && TARGET_SSE_PARTIAL_REG_DEPENDENCY
   && optimize_function_for_speed_p (cfun)
   && SSE_REG_P (operands[0])
   && (!SSE_REG_P (operands[1])
       || REGNO (operands[0]) != REGNO (operands[1]))))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4896 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54959;

 L66019: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L52679;
    }
  goto L54959;

 L52679: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode
      && GET_CODE (x1) == FIX)
    goto L52680;
  goto L54959;

 L52680: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L66025;
    case DFmode:
      goto L66026;
    default:
      break;
    }
  goto L54959;

 L66025: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52681;
    }
  goto L54959;

 L52681: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4568 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVOID_VECTOR_DECODE
   && SSE_FLOAT_MODE_P (SFmode)
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4866 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54959;

 L66026: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L52693;
    }
  goto L54959;

 L52693: ATTRIBUTE_UNUSED_LABEL
  if (
#line 4568 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVOID_VECTOR_DECODE
   && SSE_FLOAT_MODE_P (DFmode)
   && optimize_insn_for_speed_p ()))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4868 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54959;

 L66020: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L52685;
    }
  goto L54959;

 L52685: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode
      && GET_CODE (x1) == FIX)
    goto L52686;
  goto L54959;

 L52686: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SFmode:
      goto L66027;
    case DFmode:
      goto L66028;
    default:
      break;
    }
  goto L54959;

 L66027: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, SFmode))
    {
      operands[1] = x2;
      goto L52687;
    }
  goto L54959;

 L52687: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4568 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVOID_VECTOR_DECODE
   && SSE_FLOAT_MODE_P (SFmode)
   && optimize_insn_for_speed_p ()) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4867 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54959;

 L66028: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x2, DFmode))
    {
      operands[1] = x2;
      goto L52699;
    }
  goto L54959;

 L52699: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 4568 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_AVOID_VECTOR_DECODE
   && SSE_FLOAT_MODE_P (DFmode)
   && optimize_insn_for_speed_p ()) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_4869 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54959;

 L54960: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 6)
    goto L54961;
  goto L53736;

 L54961: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L54962;
  goto L53736;

 L54962: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54963;
  goto L53736;

 L54963: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCmode)
    goto L66029;
  goto L53736;

 L66029: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case COMPARE:
      goto L54964;
    case IF_THEN_ELSE:
      goto L54998;
    default:
     break;
   }
  goto L53736;

 L54964: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L54965;
  goto L53736;

 L54965: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L54966;
    }
  goto L53736;

 L54966: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == BLKmode
      && GET_CODE (x3) == MEM)
    goto L54967;
  goto L53736;

 L54967: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, VOIDmode))
    {
      operands[5] = x4;
      goto L54968;
    }
  goto L53736;

 L54968: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L54969;
  goto L53736;

 L54969: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[6] = x2;
      goto L54970;
    }
  goto L53736;

 L54970: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L54971;
  goto L53736;

 L54971: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (immediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L54972;
    }
  goto L53736;

 L54972: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L54973;
  goto L53736;

 L54973: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L54974;
    }
  goto L53736;

 L54974: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L54975;
  goto L53736;

 L54975: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L54976;
    }
  goto L53736;

 L54976: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L54977;
  goto L53736;

 L54977: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L54978;
    }
  goto L53736;

 L54978: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L54979;
  goto L53736;

 L54979: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L54980;
    }
  goto L53736;

 L54980: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == GTU)
    goto L54981;
  goto L53736;

 L54981: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L54982;
  goto L53736;

 L54982: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54983;
  goto L53736;

 L54983: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L54984;
  goto L53736;

 L54984: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[8] = x2;
      goto L54985;
    }
  goto L53736;

 L54985: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == LTU)
    goto L54986;
  goto L53736;

 L54986: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L54987;
  goto L53736;

 L54987: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L54988;
  goto L53736;

 L54988: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L54989;
  goto L53736;

 L54989: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L54990;
  goto L53736;

 L54990: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L54991;
  goto L53736;

 L54991: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[7]))
    goto L54992;
  goto L53736;

 L54992: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[8])
      && 
#line 16608 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(peep2_reg_dead_p (4, operands[7]) && peep2_reg_dead_p (4, operands[8])))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5381 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L53736;

 L54998: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_CODE (x3) == NE)
    goto L54999;
  goto L53736;

 L54999: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (register_operand (x4, VOIDmode))
    {
      operands[6] = x4;
      goto L55000;
    }
  goto L53736;

 L55000: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55001;
  goto L53736;

 L55001: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == COMPARE)
    goto L55002;
  goto L53736;

 L55002: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L55003;
  goto L53736;

 L55003: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, VOIDmode))
    {
      operands[4] = x5;
      goto L55004;
    }
  goto L53736;

 L55004: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (GET_MODE (x4) == BLKmode
      && GET_CODE (x4) == MEM)
    goto L55005;
  goto L53736;

 L55005: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (register_operand (x5, VOIDmode))
    {
      operands[5] = x5;
      goto L55006;
    }
  goto L53736;

 L55006: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 2);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55007;
  goto L53736;

 L55007: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == USE)
    goto L55008;
  goto L53736;

 L55008: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (immediate_operand (x2, SImode))
    {
      operands[3] = x2;
      goto L55009;
    }
  goto L53736;

 L55009: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 2);
  if (GET_CODE (x1) == USE)
    goto L55010;
  goto L53736;

 L55010: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55011;
  goto L53736;

 L55011: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 3);
  if (GET_CODE (x1) == CLOBBER)
    goto L55012;
  goto L53736;

 L55012: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L55013;
    }
  goto L53736;

 L55013: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 4);
  if (GET_CODE (x1) == CLOBBER)
    goto L55014;
  goto L53736;

 L55014: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[1] = x2;
      goto L55015;
    }
  goto L53736;

 L55015: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 5);
  if (GET_CODE (x1) == CLOBBER)
    goto L55016;
  goto L53736;

 L55016: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L55017;
    }
  goto L53736;

 L55017: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55018;
  goto L53736;

 L55018: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[7] = x2;
      goto L55019;
    }
  goto L53736;

 L55019: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == GTU)
    goto L55020;
  goto L53736;

 L55020: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55021;
  goto L53736;

 L55021: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55022;
  goto L53736;

 L55022: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55023;
  goto L53736;

 L55023: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, QImode))
    {
      operands[8] = x2;
      goto L55024;
    }
  goto L53736;

 L55024: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == LTU)
    goto L55025;
  goto L53736;

 L55025: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L55026;
  goto L53736;

 L55026: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)])
    goto L55027;
  goto L53736;

 L55027: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (3);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55028;
  goto L53736;

 L55028: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55029;
  goto L53736;

 L55029: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55030;
  goto L53736;

 L55030: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[7]))
    goto L55031;
  goto L53736;

 L55031: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[8])
      && 
#line 16640 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(peep2_reg_dead_p (4, operands[7]) && peep2_reg_dead_p (4, operands[8])))
    {
      *_pmatch_len = 3;
      tem = gen_peephole2_5382 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L53736;

 L53737: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L53738;
  goto L54247;

 L53738: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L53739;
    }
  goto L54247;

 L53739: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == DImode)
    goto L66031;
  goto L54247;

 L66031: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x2))
    {
    case ASHIFT:
      goto L53740;
    case LSHIFTRT:
      goto L53781;
    case ASHIFTRT:
      goto L53790;
    default:
     break;
   }
  goto L54247;

 L53740: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (nonmemory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53741;
    }
  goto L54247;

 L53741: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53742;
    }
  goto L54247;

 L53742: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53743;
  goto L54247;

 L53743: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9296 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5084 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54247;

 L53781: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53782;
    }
  goto L54247;

 L53782: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53783;
    }
  goto L54247;

 L53783: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53784;
  goto L54247;

 L53784: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9923 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5099 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54247;

 L53790: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L53791;
    }
  goto L54247;

 L53791: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, QImode))
    {
      operands[2] = x3;
      goto L53792;
    }
  goto L54247;

 L53792: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L53793;
  goto L54247;

 L53793: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && (
#line 9923 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_CMOVE) && 
#line 1002 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5100 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L54247;

 L54248: ATTRIBUTE_UNUSED_LABEL
  tem = peephole2_1 (x0, insn, _pmatch_len);
  if (tem != 0)
    return tem;
  goto L54310;

 L54311: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L54312;
  goto L55078;

 L54312: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case SImode:
      goto L66040;
    case DImode:
      goto L66041;
    default:
      break;
    }
 L55182: ATTRIBUTE_UNUSED_LABEL
  if (fp_register_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L55183;
    }
  goto L55078;

 L66040: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L54313;
    }
  goto L55182;

 L54313: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L54314;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54314: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  switch (GET_CODE (x1))
    {
    case CALL:
      goto L54315;
    case PARALLEL:
      goto L66042;
    case SET:
      goto L54387;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54315: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L54316;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54316: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L54317;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54317: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[3] = x2;
  goto L54318;

 L54318: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11730 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (1))
   && peep2_reg_dead_p (2, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5157 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L66042: ATTRIBUTE_UNUSED_LABEL
  if (XVECLEN (x1, 0) == 2)
    goto L54355;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54355: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  switch (GET_CODE (x2))
    {
    case CALL:
      goto L54356;
    case SET:
      goto L54450;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54356: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L54357;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54357: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L54358;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54358: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54359;

 L54359: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L54360;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54360: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L54361;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54361: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L54362;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54362: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54363;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54363: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (immediate_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L54364;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54364: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11801 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && SIBLING_CALL_P (peep2_next_insn (1))
   && peep2_reg_dead_p (2, operands[0])))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5162 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54450: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  operands[2] = x3;
  goto L54451;

 L54451: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == CALL)
    goto L54452;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54452: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == QImode
      && GET_CODE (x4) == MEM)
    goto L54453;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54453: ATTRIBUTE_UNUSED_LABEL
  x5 = XEXP (x4, 0);
  if (rtx_equal_p (x5, operands[0]))
    goto L54454;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54454: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  operands[3] = x4;
  goto L54455;

 L54455: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L54456;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54456: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 7)
    goto L54457;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54457: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L54458;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54458: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (GET_MODE (x4) == SImode
      && GET_CODE (x4) == REG
      && XINT (x4, 0) == 7)
    goto L54459;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54459: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (immediate_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L54460;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54460: ATTRIBUTE_UNUSED_LABEL
  if (
#line 11974 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_64BIT && SIBLING_CALL_P (peep2_next_insn (1))
   && peep2_reg_dead_p (2, operands[0])))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5173 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54387: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == PC)
    goto L54388;
 L54401: ATTRIBUTE_UNUSED_LABEL
  operands[2] = x2;
  goto L54402;

 L54388: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 11835 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && peep2_reg_dead_p (2, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5164 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x2 = XEXP (x1, 0);
  goto L54401;

 L54402: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CALL)
    goto L54403;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54403: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L54404;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54404: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L54405;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54405: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54406;

 L54406: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11895 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (1))
   && peep2_reg_dead_p (2, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5168 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L66041: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L54322;
    }
  goto L55182;

 L54322: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (memory_operand (x1, DImode))
    {
      operands[1] = x1;
      goto L54323;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54323: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  switch (GET_CODE (x1))
    {
    case CALL:
      goto L54324;
    case SET:
      goto L54394;
    default:
     break;
   }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54324: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == QImode
      && GET_CODE (x2) == MEM)
    goto L54325;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54325: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L54326;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54326: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  operands[3] = x2;
  goto L54327;

 L54327: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11730 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (1))
   && peep2_reg_dead_p (2, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5158 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L54394: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == PC)
    goto L54395;
 L54412: ATTRIBUTE_UNUSED_LABEL
  operands[2] = x2;
  goto L54413;

 L54395: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 11835 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && peep2_reg_dead_p (2, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5165 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x2 = XEXP (x1, 0);
  goto L54412;

 L54413: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == CALL)
    goto L54414;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54414: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == MEM)
    goto L54415;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54415: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L54416;
  x1 = XEXP (x0, 0);
  goto L55182;

 L54416: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  operands[3] = x3;
  goto L54417;

 L54417: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 11895 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_X32 && SIBLING_CALL_P (peep2_next_insn (1))
   && peep2_reg_dead_p (2, operands[0])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5169 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55182;

 L55183: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (fp_register_operand (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L55184;
    }
  goto L55078;

 L55184: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55185;
  goto L55078;

 L55185: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L55186;
  goto L55078;

 L55186: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (binary_fp_operator (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L55187;
    }
  goto L55078;

 L55187: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55188;
  goto L55078;

 L55188: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L55189;
    }
  goto L55078;

 L55189: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17023 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(REGNO (operands[0]) != REGNO (operands[1])))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5406 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55078;

 L55079: ATTRIBUTE_UNUSED_LABEL
  tem = peephole2_2 (x0, insn, _pmatch_len);
  if (tem != 0)
    return tem;
  goto L55471;

 L55472: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 2)
    goto L55473;
  goto L55334;

 L55473: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L55474;
  goto L55334;

 L55474: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case QImode:
      goto L66065;
    case HImode:
      goto L66066;
    default:
      break;
    }
  goto L55334;

 L66065: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, QImode))
    {
      operands[0] = x2;
      goto L55475;
    }
  goto L55334;

 L55475: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (plusminuslogic_operator (x2, QImode))
    {
      operands[2] = x2;
      goto L55476;
    }
  goto L55334;

 L55476: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55477;
  goto L55334;

 L55477: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, QImode))
    {
      operands[1] = x3;
      goto L55478;
    }
  goto L55334;

 L55478: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55479;
  goto L55334;

 L55479: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55480;
  goto L55334;

 L55480: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55481;
  goto L55334;

 L55481: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55482;
  goto L55334;

 L55482: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55483;
  goto L55334;

 L55483: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55484;
  goto L55334;

 L55484: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55485;
  goto L55334;

 L55485: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55486;
  goto L55334;

 L55486: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55487;
  goto L55334;

 L55487: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && GET_CODE (operands[2]) != MINUS
   && peep2_reg_dead_p (3, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && ix86_match_ccmode (peep2_next_insn (2),
			 GET_CODE (operands[2]) == PLUS
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5446 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55334;

 L66066: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, HImode))
    {
      operands[0] = x2;
      goto L55492;
    }
  goto L55334;

 L55492: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (plusminuslogic_operator (x2, HImode))
    {
      operands[2] = x2;
      goto L55493;
    }
  goto L55334;

 L55493: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55494;
  goto L55334;

 L55494: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, HImode))
    {
      operands[1] = x3;
      goto L55495;
    }
  goto L55334;

 L55495: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55496;
  goto L55334;

 L55496: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55497;
  goto L55334;

 L55497: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55498;
  goto L55334;

 L55498: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55499;
  goto L55334;

 L55499: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55500;
  goto L55334;

 L55500: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55501;
  goto L55334;

 L55501: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55502;
  goto L55334;

 L55502: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55503;
  goto L55334;

 L55503: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55504;
  goto L55334;

 L55504: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && GET_CODE (operands[2]) != MINUS
   && peep2_reg_dead_p (3, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && ix86_match_ccmode (peep2_next_insn (2),
			 GET_CODE (operands[2]) == PLUS
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5447 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55334;

 L55335: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L55336;
  goto L55351;

 L55336: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L55337;
    }
  goto L55351;

 L55337: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (arith_or_logical_operator (x2, SImode))
    {
      operands[3] = x2;
      goto L55338;
    }
  goto L55351;

 L55338: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55339;
 L55347: ATTRIBUTE_UNUSED_LABEL
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L55348;
    }
  goto L55351;

 L55339: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L55340;
    }
  x3 = XEXP (x2, 0);
  goto L55347;

 L55340: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55341;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55347;

 L55341: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17511 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5436 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55347;

 L55348: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[0]))
    goto L55349;
  goto L55351;

 L55349: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55350;
  goto L55351;

 L55350: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17524 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_READ_MODIFY || optimize_insn_for_size_p ())))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5437 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55351;

 L55352: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L55353;
  goto L55374;

 L55353: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55354;
    }
 L55365: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L55366;
    }
  goto L55374;

 L55354: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (register_operand (x1, SImode))
    {
      operands[1] = x1;
      goto L55355;
    }
  x1 = XEXP (x0, 0);
  goto L55365;

 L55355: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L55356;
  x1 = XEXP (x0, 0);
  goto L55365;

 L55356: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L55357;
  x1 = XEXP (x0, 0);
  goto L55365;

 L55357: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55358;
  x1 = XEXP (x0, 0);
  goto L55365;

 L55358: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (commutative_operator (x3, SImode))
    {
      operands[3] = x3;
      goto L55359;
    }
  x1 = XEXP (x0, 0);
  goto L55365;

 L55359: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L55360;
  x1 = XEXP (x0, 0);
  goto L55365;

 L55360: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (memory_operand (x4, SImode))
    {
      operands[2] = x4;
      goto L55361;
    }
  x1 = XEXP (x0, 0);
  goto L55365;

 L55361: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L55362;
  x1 = XEXP (x0, 0);
  goto L55365;

 L55362: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17
      && 
#line 17541 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(REGNO (operands[0]) != REGNO (operands[1])
   && GENERAL_REGNO_P (REGNO (operands[0]))
   && GENERAL_REGNO_P (REGNO (operands[1]))))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5438 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55365;

 L55366: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (register_operand (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L55367;
    }
  goto L55374;

 L55367: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55368;
  goto L55374;

 L55368: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L55369;
  goto L55374;

 L55369: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (commutative_operator (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L55370;
    }
  goto L55374;

 L55370: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55371;
  goto L55374;

 L55371: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L55372;
    }
  goto L55374;

 L55372: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17557 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(REGNO (operands[0]) != REGNO (operands[1])
   && ((MMX_REG_P (operands[0]) && MMX_REG_P (operands[1])) 
       || (SSE_REG_P (operands[0]) && SSE_REG_P (operands[1])))))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5439 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55374;

 L55375: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L55376;
  goto L55391;

 L55376: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (memory_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L55377;
    }
  goto L55391;

 L55377: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (arith_or_logical_operator (x2, SImode))
    {
      operands[3] = x2;
      goto L55378;
    }
  goto L55391;

 L55378: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55379;
 L55387: ATTRIBUTE_UNUSED_LABEL
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L55388;
    }
  goto L55391;

 L55379: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (nonmemory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L55380;
    }
  x3 = XEXP (x2, 0);
  goto L55387;

 L55380: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55381;
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55387;

 L55381: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17577 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   /* Do not split stack checking probes.  */
   && GET_CODE (operands[3]) != IOR && operands[1] != const0_rtx))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5440 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XVECEXP (x0, 0, 0);
  x2 = XEXP (x1, 1);
  x3 = XEXP (x2, 0);
  goto L55387;

 L55388: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (rtx_equal_p (x3, operands[0]))
    goto L55389;
  goto L55391;

 L55389: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55390;
  goto L55391;

 L55390: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17
      && 
#line 17593 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   /* Do not split stack checking probes.  */
   && GET_CODE (operands[3]) != IOR && operands[1] != const0_rtx))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5441 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55391;

 L55392: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L55393;
  goto L55505;

 L55393: ATTRIBUTE_UNUSED_LABEL
  tem = peephole2_3 (x0, insn, _pmatch_len);
  if (tem != 0)
    return tem;
  goto L55505;

 L55506: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 2)
    goto L55507;
  goto L55580;

 L55507: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L55508;
  goto L55580;

 L55508: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  switch (GET_MODE (x2))
    {
    case SImode:
      goto L66071;
    case DImode:
      goto L66072;
    default:
      break;
    }
  goto L55580;

 L66071: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, SImode))
    {
      operands[0] = x2;
      goto L55509;
    }
  goto L55580;

 L55509: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (plusminuslogic_operator (x2, SImode))
    {
      operands[2] = x2;
      goto L55510;
    }
  goto L55580;

 L55510: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55511;
  goto L55580;

 L55511: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, SImode))
    {
      operands[1] = x3;
      goto L55512;
    }
  goto L55580;

 L55512: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55513;
  goto L55580;

 L55513: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55514;
  goto L55580;

 L55514: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55515;
  goto L55580;

 L55515: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55516;
  goto L55580;

 L55516: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55517;
  goto L55580;

 L55517: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55518;
  goto L55580;

 L55518: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55519;
  goto L55580;

 L55519: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55520;
  goto L55580;

 L55520: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55521;
  goto L55580;

 L55521: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && GET_CODE (operands[2]) != MINUS
   && peep2_reg_dead_p (3, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && ix86_match_ccmode (peep2_next_insn (2),
			 GET_CODE (operands[2]) == PLUS
			 ? CCGOCmode : CCNOmode)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5448 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55580;

 L66072: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x2, DImode))
    {
      operands[0] = x2;
      goto L55526;
    }
  goto L55580;

 L55526: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (plusminuslogic_operator (x2, DImode))
    {
      operands[2] = x2;
      goto L55527;
    }
  goto L55580;

 L55527: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55528;
  goto L55580;

 L55528: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (memory_operand (x3, DImode))
    {
      operands[1] = x3;
      goto L55529;
    }
  goto L55580;

 L55529: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L55530;
  goto L55580;

 L55530: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55531;
  goto L55580;

 L55531: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55532;
  goto L55580;

 L55532: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[1]))
    goto L55533;
  goto L55580;

 L55533: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0]))
    goto L55534;
  goto L55580;

 L55534: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L55535;
  goto L55580;

 L55535: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L55536;
  goto L55580;

 L55536: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == COMPARE)
    goto L55537;
  goto L55580;

 L55537: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L55538;
  goto L55580;

 L55538: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (x3 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && (
#line 17645 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   && GET_CODE (operands[2]) != MINUS
   && peep2_reg_dead_p (3, operands[0])
   && !reg_overlap_mentioned_p (operands[0], operands[1])
   && ix86_match_ccmode (peep2_next_insn (2),
			 GET_CODE (operands[2]) == PLUS
			 ? CCGOCmode : CCNOmode)) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_5449 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55580;

 L55586: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  switch (GET_CODE (x1))
    {
    case STRICT_LOW_PART:
      goto L55587;
    case REG:
      goto L66073;
    default:
     break;
   }
 L55581: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L55582;
    }
 L55591: ATTRIBUTE_UNUSED_LABEL
  switch (GET_MODE (x1))
    {
    case HImode:
      goto L66074;
    case SImode:
      goto L66075;
    case DImode:
      goto L66076;
    default:
      break;
    }
  goto L56149;

 L55587: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L55588;
    }
  goto L55591;

 L55588: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (0)]
      && 
#line 17716 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((GET_MODE (operands[0]) == QImode
    || GET_MODE (operands[0]) == HImode)
   && (! TARGET_USE_MOV0 || optimize_insn_for_size_p ())
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5453 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55591;

 L66073: ATTRIBUTE_UNUSED_LABEL
  if (flags_reg_operand (x1, VOIDmode))
    {
      operands[0] = x1;
      goto L56064;
    }
  goto L55581;

 L56064: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (compare_operator (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L56065;
    }
  x1 = XEXP (x0, 0);
  goto L55581;

 L56065: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[2] = x2;
      goto L56066;
    }
  x1 = XEXP (x0, 0);
  goto L55581;

 L56066: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, VOIDmode))
    {
      operands[3] = x2;
      goto L56067;
    }
  x1 = XEXP (x0, 0);
  goto L55581;

 L56067: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17961 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((((!TARGET_FUSE_CMP_AND_BRANCH || optimize_insn_for_size_p ())
     && incdec_operand (operands[3], GET_MODE (operands[3])))
    || (!TARGET_FUSE_CMP_AND_BRANCH
	&& INTVAL (operands[3]) == 128))
   && ix86_match_ccmode (insn, CCGCmode)
   && peep2_reg_dead_p (1, operands[2])))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5503 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55581;

 L55582: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const0_operand (x1, VOIDmode))
    {
      operands[1] = x1;
      goto L55583;
    }
  x1 = XEXP (x0, 0);
  goto L55591;

 L55583: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17705 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(GET_MODE_SIZE (GET_MODE (operands[0])) <= UNITS_PER_WORD
   && (! TARGET_USE_MOV0 || optimize_insn_for_size_p ())
   && GENERAL_REG_P (operands[0])
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5452 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 0);
  goto L55591;

 L66074: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L55592;
    }
  goto L56149;

 L55592: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)]
      && 
#line 17727 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_insn_for_size_p () || TARGET_MOVE_M1_VIA_OR)
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5454 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L56149;

 L66075: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L55604;
    }
  goto L56149;

 L55604: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == SImode)
    goto L66077;
 L55596: ATTRIBUTE_UNUSED_LABEL
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)]
      && 
#line 17727 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_insn_for_size_p () || TARGET_MOVE_M1_VIA_OR)
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5455 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L56149;

 L66077: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L55605;
    case MULT:
      goto L55631;
    default:
     break;
   }
  goto L55596;

 L55605: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L55606;
 L55619: ATTRIBUTE_UNUSED_LABEL
  if (x86_64_nonmemory_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L55620;
    }
  goto L55596;

 L55606: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_nonmemory_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L55607;
    }
  x2 = XEXP (x1, 0);
  goto L55619;

 L55607: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17745 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_OPT_AGU
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5457 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L55619;

 L55620: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && 
#line 17754 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_OPT_AGU
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5459 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55596;

 L55631: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L55632;
  goto L55596;

 L55632: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, SImode))
    {
      operands[1] = x2;
      goto L55633;
    }
  goto L55596;

 L55633: ATTRIBUTE_UNUSED_LABEL
  if (
#line 17787 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(exact_log2 (INTVAL (operands[1])) >= 0
   && peep2_regno_dead_p (0, FLAGS_REG)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5461 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  goto L55596;

 L66076: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L55611;
    }
  goto L56149;

 L55611: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (GET_MODE (x1) == DImode)
    goto L66079;
 L55600: ATTRIBUTE_UNUSED_LABEL
  if (x1 == const_int_rtx[MAX_SAVED_CONST_INT + (-1)]
      && (
#line 17727 "../../gcc-5.1.0/gcc/config/i386/i386.md"
((optimize_insn_for_size_p () || TARGET_MOVE_M1_VIA_OR)
   && peep2_regno_dead_p (0, FLAGS_REG)) && 
#line 955 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5456 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L56149;

 L66079: ATTRIBUTE_UNUSED_LABEL
  switch (GET_CODE (x1))
    {
    case PLUS:
      goto L55612;
    case MULT:
      goto L55638;
    default:
     break;
   }
  goto L55600;

 L55612: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L55613;
 L55625: ATTRIBUTE_UNUSED_LABEL
  if (x86_64_nonmemory_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L55626;
    }
  goto L55600;

 L55613: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (x86_64_nonmemory_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L55614;
    }
  x2 = XEXP (x1, 0);
  goto L55625;

 L55614: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17745 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_OPT_AGU
   && peep2_regno_dead_p (0, FLAGS_REG)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5458 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  x2 = XEXP (x1, 0);
  goto L55625;

 L55626: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (rtx_equal_p (x2, operands[0])
      && (
#line 17754 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(!TARGET_OPT_AGU
   && peep2_regno_dead_p (0, FLAGS_REG)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5460 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55600;

 L55638: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (rtx_equal_p (x2, operands[0]))
    goto L55639;
  goto L55600;

 L55639: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (const_int_operand (x2, DImode))
    {
      operands[1] = x2;
      goto L55640;
    }
  goto L55600;

 L55640: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 17787 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(exact_log2 (INTVAL (operands[1])) >= 0
   && peep2_regno_dead_p (0, FLAGS_REG)) && 
#line 958 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 0;
      tem = gen_peephole2_5462 (insn, operands);
      if (tem != 0)
        return tem;
    }
  x1 = XEXP (x0, 1);
  goto L55600;

 L56150: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == PARALLEL
      && XVECLEN (x0, 0) == 2)
    goto L56151;
  goto L55642;

 L56151: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 0);
  if (GET_CODE (x1) == SET)
    goto L56152;
  goto L55642;

 L56152: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (register_operand (x2, VOIDmode))
    {
      operands[0] = x2;
      goto L56153;
    }
  goto L55642;

 L56153: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_CODE (x2) == ASHIFT)
    goto L56154;
  goto L55642;

 L56154: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[1] = x3;
      goto L56155;
    }
  goto L55642;

 L56155: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, VOIDmode))
    {
      operands[2] = x3;
      goto L56156;
    }
  goto L55642;

 L56156: ATTRIBUTE_UNUSED_LABEL
  x1 = XVECEXP (x0, 0, 1);
  if (GET_CODE (x1) == CLOBBER)
    goto L56157;
  goto L55642;

 L56157: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56158;
  goto L55642;

 L56158: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 2)
    goto L56159;
  goto L55642;

 L56159: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L56160;
  goto L55642;

 L56160: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (register_operand (x3, VOIDmode))
    {
      operands[3] = x3;
      goto L56161;
    }
  goto L55642;

 L56161: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_CODE (x3) == PLUS)
    goto L56162;
  goto L55642;

 L56162: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[0]))
    goto L56163;
  goto L55642;

 L56163: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (x86_64_general_operand (x4, VOIDmode))
    {
      operands[4] = x4;
      goto L56164;
    }
  goto L55642;

 L56164: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == CLOBBER)
    goto L56165;
  goto L55642;

 L56165: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode)
    goto L66081;
  goto L55642;

 L66081: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x3) == REG)
    goto L66083;
  goto L55642;

 L66083: ATTRIBUTE_UNUSED_LABEL
  if (XINT (x3, 0) == 17)
    goto L66085;
  goto L55642;

 L66085: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18072 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(IN_RANGE (INTVAL (operands[2]), 1, 3)
   /* Validate MODE for lea.  */
   && ((!TARGET_PARTIAL_REG_STALL
	&& (GET_MODE (operands[0]) == QImode
	    || GET_MODE (operands[0]) == HImode))
       || GET_MODE (operands[0]) == SImode
       || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   && (rtx_equal_p (operands[0], operands[3])
       || peep2_reg_dead_p (2, operands[0]))
   /* We reorder load and the shift.  */
   && !reg_overlap_mentioned_p (operands[0], operands[4])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == SImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5513 (insn, operands);
      if (tem != 0)
        return tem;
    }
 L66086: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 18072 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(IN_RANGE (INTVAL (operands[2]), 1, 3)
   /* Validate MODE for lea.  */
   && ((!TARGET_PARTIAL_REG_STALL
	&& (GET_MODE (operands[0]) == QImode
	    || GET_MODE (operands[0]) == HImode))
       || GET_MODE (operands[0]) == SImode
       || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   && (rtx_equal_p (operands[0], operands[3])
       || peep2_reg_dead_p (2, operands[0]))
   /* We reorder load and the shift.  */
   && !reg_overlap_mentioned_p (operands[0], operands[4])) && 
#line 1143 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(word_mode == DImode)))
    {
      *_pmatch_len = 1;
      tem = gen_peephole2_5514 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto L55642;

 L66015: ATTRIBUTE_UNUSED_LABEL
  tem = peephole2_4 (x0, insn, _pmatch_len);
  if (tem != 0)
    return tem;
  goto L56812;

 L56813: ATTRIBUTE_UNUSED_LABEL
  if (GET_CODE (x0) == SET)
    goto L56814;
  goto ret0;

 L56814: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 0);
  switch (GET_MODE (x1))
    {
    case QImode:
      goto L66182;
    case HImode:
      goto L66183;
    case SImode:
      goto L66184;
    case DImode:
      goto L66185;
    default:
      break;
    }
  goto ret0;

 L66182: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, QImode))
    {
      operands[0] = x1;
      goto L56815;
    }
  goto ret0;

 L56815: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const_int_operand (x1, QImode))
    {
      operands[2] = x1;
      goto L56816;
    }
  goto ret0;

 L56816: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 3)
    goto L56817;
  goto ret0;

 L56817: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L56818;
  goto ret0;

 L56818: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56819;
  goto ret0;

 L56819: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L56820;
  goto ret0;

 L56820: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, QImode))
    {
      operands[1] = x4;
      goto L56821;
    }
  goto ret0;

 L56821: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L56822;
    }
  goto ret0;

 L56822: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L56823;
  goto ret0;

 L56823: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L56824;
  goto ret0;

 L56824: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == QImode
      && GET_CODE (x3) == PLUS)
    goto L56825;
  goto ret0;

 L56825: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L56826;
  goto ret0;

 L56826: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[0]))
    goto L56827;
  goto ret0;

 L56827: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_CODE (x2) == CLOBBER)
    goto L56828;
  goto ret0;

 L56828: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L56829;
  goto ret0;

 L56829: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L56830;
  goto ret0;

 L56830: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56831;
  goto ret0;

 L56831: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L56832;
  goto ret0;

 L56832: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56833;
  goto ret0;

 L56833: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, QImode))
    {
      operands[3] = x3;
      goto L56834;
    }
  goto ret0;

 L56834: ATTRIBUTE_UNUSED_LABEL
  if (
#line 457 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(peep2_reg_dead_p (3, operands[0])
   && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
      == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   && !reg_overlap_mentioned_p (operands[0], operands[1])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_7220 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66183: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, HImode))
    {
      operands[0] = x1;
      goto L56838;
    }
  goto ret0;

 L56838: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const_int_operand (x1, HImode))
    {
      operands[2] = x1;
      goto L56839;
    }
  goto ret0;

 L56839: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 3)
    goto L56840;
  goto ret0;

 L56840: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L56841;
  goto ret0;

 L56841: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56842;
  goto ret0;

 L56842: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L56843;
  goto ret0;

 L56843: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, HImode))
    {
      operands[1] = x4;
      goto L56844;
    }
  goto ret0;

 L56844: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L56845;
    }
  goto ret0;

 L56845: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L56846;
  goto ret0;

 L56846: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L56847;
  goto ret0;

 L56847: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == HImode
      && GET_CODE (x3) == PLUS)
    goto L56848;
  goto ret0;

 L56848: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L56849;
  goto ret0;

 L56849: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[0]))
    goto L56850;
  goto ret0;

 L56850: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_CODE (x2) == CLOBBER)
    goto L56851;
  goto ret0;

 L56851: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L56852;
  goto ret0;

 L56852: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L56853;
  goto ret0;

 L56853: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56854;
  goto ret0;

 L56854: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L56855;
  goto ret0;

 L56855: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56856;
  goto ret0;

 L56856: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, HImode))
    {
      operands[3] = x3;
      goto L56857;
    }
  goto ret0;

 L56857: ATTRIBUTE_UNUSED_LABEL
  if (
#line 457 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(peep2_reg_dead_p (3, operands[0])
   && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
      == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   && !reg_overlap_mentioned_p (operands[0], operands[1])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_7221 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66184: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, SImode))
    {
      operands[0] = x1;
      goto L56861;
    }
  goto ret0;

 L56861: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const_int_operand (x1, SImode))
    {
      operands[2] = x1;
      goto L56862;
    }
  goto ret0;

 L56862: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 3)
    goto L56863;
  goto ret0;

 L56863: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L56864;
  goto ret0;

 L56864: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56865;
  goto ret0;

 L56865: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L56866;
  goto ret0;

 L56866: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, SImode))
    {
      operands[1] = x4;
      goto L56867;
    }
  goto ret0;

 L56867: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L56868;
    }
  goto ret0;

 L56868: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L56869;
  goto ret0;

 L56869: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L56870;
  goto ret0;

 L56870: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == SImode
      && GET_CODE (x3) == PLUS)
    goto L56871;
  goto ret0;

 L56871: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L56872;
  goto ret0;

 L56872: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[0]))
    goto L56873;
  goto ret0;

 L56873: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_CODE (x2) == CLOBBER)
    goto L56874;
  goto ret0;

 L56874: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L56875;
  goto ret0;

 L56875: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L56876;
  goto ret0;

 L56876: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56877;
  goto ret0;

 L56877: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L56878;
  goto ret0;

 L56878: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56879;
  goto ret0;

 L56879: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, SImode))
    {
      operands[3] = x3;
      goto L56880;
    }
  goto ret0;

 L56880: ATTRIBUTE_UNUSED_LABEL
  if (
#line 457 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(peep2_reg_dead_p (3, operands[0])
   && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
      == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   && !reg_overlap_mentioned_p (operands[0], operands[1])))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_7222 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;

 L66185: ATTRIBUTE_UNUSED_LABEL
  if (register_operand (x1, DImode))
    {
      operands[0] = x1;
      goto L56884;
    }
  goto ret0;

 L56884: ATTRIBUTE_UNUSED_LABEL
  x1 = XEXP (x0, 1);
  if (const_int_operand (x1, DImode))
    {
      operands[2] = x1;
      goto L56885;
    }
  goto ret0;

 L56885: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (1);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == PARALLEL
      && XVECLEN (x1, 0) == 3)
    goto L56886;
  goto ret0;

 L56886: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 0);
  if (GET_CODE (x2) == SET)
    goto L56887;
  goto ret0;

 L56887: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56888;
  goto ret0;

 L56888: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == UNSPEC_VOLATILE
      && XVECLEN (x3, 0) == 2
      && XINT (x3, 1) == 59)
    goto L56889;
  goto ret0;

 L56889: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 0);
  if (memory_operand (x4, DImode))
    {
      operands[1] = x4;
      goto L56890;
    }
  goto ret0;

 L56890: ATTRIBUTE_UNUSED_LABEL
  x4 = XVECEXP (x3, 0, 1);
  if (const_int_operand (x4, SImode))
    {
      operands[4] = x4;
      goto L56891;
    }
  goto ret0;

 L56891: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 1);
  if (GET_CODE (x2) == SET)
    goto L56892;
  goto ret0;

 L56892: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[1]))
    goto L56893;
  goto ret0;

 L56893: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (GET_MODE (x3) == DImode
      && GET_CODE (x3) == PLUS)
    goto L56894;
  goto ret0;

 L56894: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 0);
  if (rtx_equal_p (x4, operands[1]))
    goto L56895;
  goto ret0;

 L56895: ATTRIBUTE_UNUSED_LABEL
  x4 = XEXP (x3, 1);
  if (rtx_equal_p (x4, operands[0]))
    goto L56896;
  goto ret0;

 L56896: ATTRIBUTE_UNUSED_LABEL
  x2 = XVECEXP (x1, 0, 2);
  if (GET_CODE (x2) == CLOBBER)
    goto L56897;
  goto ret0;

 L56897: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (GET_MODE (x3) == CCmode
      && GET_CODE (x3) == REG
      && XINT (x3, 0) == 17)
    goto L56898;
  goto ret0;

 L56898: ATTRIBUTE_UNUSED_LABEL
  tem = peep2_next_insn (2);
  x1 = PATTERN (tem);
  if (GET_CODE (x1) == SET)
    goto L56899;
  goto ret0;

 L56899: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 0);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == REG
      && XINT (x2, 0) == 17)
    goto L56900;
  goto ret0;

 L56900: ATTRIBUTE_UNUSED_LABEL
  x2 = XEXP (x1, 1);
  if (GET_MODE (x2) == CCZmode
      && GET_CODE (x2) == COMPARE)
    goto L56901;
  goto ret0;

 L56901: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 0);
  if (rtx_equal_p (x3, operands[0]))
    goto L56902;
  goto ret0;

 L56902: ATTRIBUTE_UNUSED_LABEL
  x3 = XEXP (x2, 1);
  if (const_int_operand (x3, DImode))
    {
      operands[3] = x3;
      goto L56903;
    }
  goto ret0;

 L56903: ATTRIBUTE_UNUSED_LABEL
  if ((
#line 457 "../../gcc-5.1.0/gcc/config/i386/sync.md"
(peep2_reg_dead_p (3, operands[0])
   && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
      == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   && !reg_overlap_mentioned_p (operands[0], operands[1])) && 
#line 952 "../../gcc-5.1.0/gcc/config/i386/i386.md"
(TARGET_64BIT)))
    {
      *_pmatch_len = 2;
      tem = gen_peephole2_7223 (insn, operands);
      if (tem != 0)
        return tem;
    }
  goto ret0;
 ret0:
  return 0;
}

