aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted
diff options
context:
space:
mode:
authorBen Cheng <bccheng@google.com>2014-03-25 22:37:19 -0700
committerBen Cheng <bccheng@google.com>2014-03-25 22:37:19 -0700
commit1bc5aee63eb72b341f506ad058502cd0361f0d10 (patch)
treec607e8252f3405424ff15bc2d00aa38dadbb2518 /gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted
parent283a0bf58fcf333c58a2a92c3ebbc41fb9eb1fdb (diff)
downloadtoolchain_gcc-1bc5aee63eb72b341f506ad058502cd0361f0d10.tar.gz
toolchain_gcc-1bc5aee63eb72b341f506ad058502cd0361f0d10.tar.bz2
toolchain_gcc-1bc5aee63eb72b341f506ad058502cd0361f0d10.zip
Initial checkin of GCC 4.9.0 from trunk (r208799).
Change-Id: I48a3c08bb98542aa215912a75f03c0890e497dba
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/386.c23
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/86.c19
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG1.c37
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG11.c29
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG12.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG13.c19
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG16.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG17.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG18.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG2.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG21.c22
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG22.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG23.c18
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG24.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG25.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG3.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG4.c20
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG5.c18
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG6.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.x7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIset.c216
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/PYRBUG.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIset.c216
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.c216
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.x7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIset.c216
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UHIcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UQIcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/USIcmp.c280
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a1.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a3.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aa.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aaa.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/abs.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ac.c30
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/acc.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add386.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/addcc.c18
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andm.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andmem.c22
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andn.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andok.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsi.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsparc.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aos.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/arr.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/as.c14
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ase.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b1.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b2.c24
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b3.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b88.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bad.c26
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/band.c16
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb0.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb1.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bbb.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bc.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bcopy.c68
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bf.c31
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfins.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfx.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bge.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bit.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitf.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitw.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/blk.c18
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt386.c18
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bug.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bugc.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/buns.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bx.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c1.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c2.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call386.c20
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/callind.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cc.c96
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/charmtst.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmb.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmp.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmphi.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmpsi386.c14
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmul.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cn1.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/comb.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/consec.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/const.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv.c32
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv_tst.c66
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cp.c42
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/csebug.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cvt.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/d.c19
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dbl_parm.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dblbug.c21
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ddd.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dead.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/delay.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/di.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dic.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dilayout.c33
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimove.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimul.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/div.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/divdf.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dm.c24
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dshift.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.c59
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.x40
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/e.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ex.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ext.c23
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f1.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f2.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fdmul.c2
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flo.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/float.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flt_const.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fnul.c23
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/foo.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/forgetcc.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fq.c25
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/g.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gen_tst.c67
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/glob.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gronk.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hi.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hibug.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i++.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ic.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/icmp.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ifreg.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/imm.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/isinf.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jmp.c20
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jumptab.c20
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/l.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/layout.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lbug.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ll1.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/llbug.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lll.c45
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/load8.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loadhicc.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/log2.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/logic.c37
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop-1.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop386.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lop.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m1.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m2.c44
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m5.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m68.c14
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mbyte.c14
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mchar.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mcmp.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mdouble.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/memtst.c26
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/miscomp.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mm.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mod.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/modcc.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move_qhi.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mregtst.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/msp.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mtst.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mu.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mul.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword.c29
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword1.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n1.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/nand.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/neg.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/o.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/omit.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opout.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opt.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or386.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/p.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/parms.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pass.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pmt.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/poor.c34
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pp.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pret-arg.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr2.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/q.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r1.c29
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rel.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rmsc.c46
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/round.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/run.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/s.c24
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sar.c10
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sc.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scal.c19
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scc.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scond.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/selfrec.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/seq.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set386.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set88.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sh.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shand.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shft.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shift.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shloop.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shm.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext.c27
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext2.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sim.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/simple.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sne.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sound.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sparcbug.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/speed.c8
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stor.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/store0.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/storecc.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/str.c13
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stru.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/structret.c69
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stuct.c22
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sub32.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcc.c33
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcse.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sym.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/symconst.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/t.c18
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-flow.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-loop.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test.c6
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/time.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/tmp.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trivial.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trunc.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/u.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udconvert.c30
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udivmod4.c56
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns_tst.c19
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/unsorted.exp60
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uuarg.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/v.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/w.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ww.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/x.c1
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xb.c17
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xbg.c14
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xc.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xcsebug.c14
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xdi.c15
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xfoo.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xi.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xlop.c11
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xmtst.c26
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xneg.c5
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xopt.c35
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xor.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xorn.c31
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xp.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xpp.c12
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xs.c9
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xsh.c7
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xz.c4
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xzz.c4
282 files changed, 6419 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/386.c
new file mode 100644
index 000000000..432cdaddd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/386.c
@@ -0,0 +1,23 @@
+foo (a, p)
+ int *p;
+{
+ p[0] = a;
+ a = (short) a;
+ return a;
+}
+
+main ()
+{
+ int i;
+ foobar (i, &i);
+}
+
+
+foobar (a, b)
+{
+ int c;
+
+ c = a % b;
+ a = a / b;
+ return a + b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/86.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/86.c
new file mode 100644
index 000000000..deea85ee2
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/86.c
@@ -0,0 +1,19 @@
+m32 (a)
+ int *a;
+{
+ a[1] = a[0];
+}
+
+m16 (a)
+ short *a;
+{
+ a[1] = a[0];
+}
+
+
+m8 (a)
+ char *a;
+{
+ a[1] = a[0];
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG1.c
new file mode 100644
index 000000000..ada8eaf49
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG1.c
@@ -0,0 +1,37 @@
+struct _XtTextSource {
+ /* ... */
+ void (* SetSelection)();
+ /* ... */
+ };
+
+typedef struct _XtTextSource *XtTextSource;
+
+typedef struct _TextPart {
+ XtTextSource source;
+ /* ... */
+} TextPart;
+
+typedef struct _TextRec {
+ /* ... */
+ TextPart text;
+} TextRec;
+
+typedef struct _TextRec *TextWidget;
+
+
+void XtTextUnsetSelection(w)
+ TextWidget w; /* original is: Widget w; */
+{
+ register TextWidget ctx = (TextWidget) w;
+ void (*nullProc)() = 0;
+
+/*
+ * the following line causes the error, when optimizing:
+ */
+
+ if (ctx->text.source->SetSelection != nullProc) {
+
+ foo();
+
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG11.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG11.c
new file mode 100644
index 000000000..fe2923a97
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG11.c
@@ -0,0 +1,29 @@
+#define DD 2410065408
+
+unsigned
+foo (d)
+ double d;
+{
+ return d;
+}
+
+#if foobar
+
+main ()
+{
+#if bar
+ unsigned u = DD;
+ double d = (double) u;
+#else
+ double d = (double) DD;
+#endif
+ printf ("%u = %u = %lf\n", foo ((double) DD), foo (d), d);
+}
+#else
+
+main ()
+{
+ printf ("%lf\n", (double) ((unsigned) DD));
+ foo ((double) DD);
+}
+#endif
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG12.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG12.c
new file mode 100644
index 000000000..b32fa6071
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG12.c
@@ -0,0 +1,5 @@
+long long
+main ()
+{
+ return 1.1e10;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG13.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG13.c
new file mode 100644
index 000000000..9a302b951
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG13.c
@@ -0,0 +1,19 @@
+struct tree_common
+{
+ int uid;
+ unsigned int code : 8;
+ unsigned int code2 : 8;
+ unsigned external_attr : 1;
+ unsigned public_attr : 1;
+
+};
+
+static int
+duplicate_decls (x)
+ register struct tree_common *x;
+{
+ if (x->external_attr)
+ if (x->code)
+ if (x->code2)
+ x->public_attr = 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG16.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG16.c
new file mode 100644
index 000000000..daeae2ca5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG16.c
@@ -0,0 +1,6 @@
+setgetlen (a)
+ int *a;
+{
+ while (*a++ & 0x80000000)
+ ;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG17.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG17.c
new file mode 100644
index 000000000..920587046
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG17.c
@@ -0,0 +1,8 @@
+double d;
+
+main()
+{
+ int i;
+
+ i = (int) d;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG18.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG18.c
new file mode 100644
index 000000000..ed586a7f9
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG18.c
@@ -0,0 +1,5 @@
+main()
+{
+ if ((signed int) 1 < (signed int) -2147483648)
+ printf("true\n");
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG2.c
new file mode 100644
index 000000000..6dc30be65
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG2.c
@@ -0,0 +1,8 @@
+BUG2 (p) int *p;
+{
+ int a = 0;
+ if (*p == a)
+ return 0;
+ else
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG21.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG21.c
new file mode 100644
index 000000000..c8a1157cc
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG21.c
@@ -0,0 +1,22 @@
+typedef struct {
+ int knock_on_wood; /* leave it out and it works. */
+ int f1;
+} FOO;
+
+typedef struct {
+ FOO *b1;
+} BAR;
+
+Nase ()
+{
+ int i, j;
+ FOO *foop;
+ BAR *barp;
+
+ for (i = 0; i < 2; i++) {
+ foop = &barp->b1[i];
+ for (j = 0; j < foop->f1; j++) {
+ /* dummy() */; /* put it in and it works. */
+ }
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG22.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG22.c
new file mode 100644
index 000000000..9fd95254d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG22.c
@@ -0,0 +1,6 @@
+
+void
+Rotate (float angle)
+{
+ float mag = (angle < 0) ? -angle : angle;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG23.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG23.c
new file mode 100644
index 000000000..1ff429ef0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG23.c
@@ -0,0 +1,18 @@
+main()
+{
+ static char static_char_array[1];
+ static char *static_char_pointer;
+ static char static_char;
+ char char_array[1];
+ char *char_pointer;
+ char character;
+
+ char *cp, c;
+
+ c = cp - static_char_array; /* error */
+ c = cp - static_char_pointer;
+ c = cp - &static_char; /* error */
+ c = cp - char_array;
+ c = cp - char_pointer;
+ c = cp - &character;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG24.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG24.c
new file mode 100644
index 000000000..7627a3ddc
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG24.c
@@ -0,0 +1,15 @@
+struct ack {
+ char a, b, c;
+};
+
+main()
+{
+ struct ack bad;
+
+ foo(bad);
+}
+
+foo(c)
+ struct ack c;
+{
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG25.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG25.c
new file mode 100644
index 000000000..574417061
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG25.c
@@ -0,0 +1,5 @@
+
+foo (a)
+{
+ __builtin_ffs (a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG3.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG3.c
new file mode 100644
index 000000000..30e6622a5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG3.c
@@ -0,0 +1,8 @@
+BUG2 (p) char *p;
+{
+ int a = 0;
+ if (*p == a)
+ return 0;
+ else
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG4.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG4.c
new file mode 100644
index 000000000..be6a14989
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG4.c
@@ -0,0 +1,20 @@
+int foo()
+{
+ char c;
+
+ return (c ^ 30 ) > (c ^ 40 );
+/*
+ these also get the signal :
+ return (c ^ 30 ) == (c ^ 40 );
+ return ((int)c ^ 30 ) > (c ^ 40 );
+ also fails if c is "extern char"
+
+ these are ok :
+ return (c + 30 ) > (c ^ 40 );
+ return (c ^ 30 ) > (c + 40 );
+ return (c ^ 30 ) + (c ^ 40 );
+ return ('a' ^ 30 ) > (c ^ 40 );
+ return (c ^ 40 );
+ return (c ^ 30 ) > (c ^ 40 );
+*/
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG5.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG5.c
new file mode 100644
index 000000000..9bed7136f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG5.c
@@ -0,0 +1,18 @@
+enum bar
+{
+ one,
+ two
+};
+
+enum bar foo;
+
+void bar()
+{
+ switch (foo)
+ {
+ case one:
+ case two:
+ printf ("one to two\n");
+ break;
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG6.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG6.c
new file mode 100644
index 000000000..b13946509
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/BUG6.c
@@ -0,0 +1,8 @@
+main()
+{
+ unsigned long L;
+ double D;
+ D = L = -3;
+ printf("L=%lu, D=%g\n", L, D);
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.c
new file mode 100644
index 000000000..18b20e6f6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.c
@@ -0,0 +1,280 @@
+#define type double
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)((int)&glob0))
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)((int)&glob1))
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.x b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.x
new file mode 100644
index 000000000..121fcfecc
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/DFcmp.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { [check_effective_target_int16] } {
+ return 1
+}
+
+return 0;
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIcmp.c
new file mode 100644
index 000000000..77b47886e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIcmp.c
@@ -0,0 +1,280 @@
+#define type short
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIset.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIset.c
new file mode 100644
index 000000000..163cb7cbe
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/HIset.c
@@ -0,0 +1,216 @@
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)(int)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)(int)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+int glob0, glob1;
+
+#define type short
+
+reg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = reg1; }
+
+reg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = indreg1; }
+
+reg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = imm1; }
+
+reg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = limm1; }
+
+reg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adr1; }
+
+reg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrreg1; }
+
+reg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrx1; }
+
+reg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = regx1; }
+
+indreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = reg1; }
+
+indreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = indreg1; }
+
+indreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = imm1; }
+
+indreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = limm1; }
+
+indreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adr1; }
+
+indreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrreg1; }
+
+indreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrx1; }
+
+indreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = regx1; }
+
+adr0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = reg1; }
+
+adr0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = indreg1; }
+
+adr0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = imm1; }
+
+adr0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = limm1; }
+
+adr0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adr1; }
+
+adr0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrreg1; }
+
+adr0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrx1; }
+
+adr0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = regx1; }
+
+adrreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = reg1; }
+
+adrreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = indreg1; }
+
+adrreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = imm1; }
+
+adrreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = limm1; }
+
+adrreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adr1; }
+
+adrreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrreg1; }
+
+adrreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrx1; }
+
+adrreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = regx1; }
+
+adrx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = reg1; }
+
+adrx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = indreg1; }
+
+adrx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = imm1; }
+
+adrx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = limm1; }
+
+adrx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adr1; }
+
+adrx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrreg1; }
+
+adrx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrx1; }
+
+adrx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = regx1; }
+
+regx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = reg1; }
+
+regx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = indreg1; }
+
+regx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = imm1; }
+
+regx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = limm1; }
+
+regx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adr1; }
+
+regx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrreg1; }
+
+regx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrx1; }
+
+regx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = regx1; }
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/PYRBUG.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/PYRBUG.c
new file mode 100644
index 000000000..c64c3f5e1
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/PYRBUG.c
@@ -0,0 +1,17 @@
+typedef struct
+{
+ int v;
+ int h;
+} Point;
+
+typedef struct
+{
+ int top, left, bottom, right;
+} Rect;
+
+int
+x_PtInRect (Point pt, Rect *r)
+{
+ return pt.v >= r->top && pt.v < r->bottom
+ && pt.h >= r->left && pt.h < r->right;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIcmp.c
new file mode 100644
index 000000000..c5161646f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIcmp.c
@@ -0,0 +1,280 @@
+#define type signed char
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)11111111)
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIset.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIset.c
new file mode 100644
index 000000000..212609dc8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/QIset.c
@@ -0,0 +1,216 @@
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)(int)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)11111111)
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)(int)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+int glob0, glob1;
+
+#define type char
+
+reg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = reg1; }
+
+reg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = indreg1; }
+
+reg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = imm1; }
+
+reg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = limm1; }
+
+reg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adr1; }
+
+reg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrreg1; }
+
+reg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrx1; }
+
+reg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = regx1; }
+
+indreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = reg1; }
+
+indreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = indreg1; }
+
+indreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = imm1; }
+
+indreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = limm1; }
+
+indreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adr1; }
+
+indreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrreg1; }
+
+indreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrx1; }
+
+indreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = regx1; }
+
+adr0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = reg1; }
+
+adr0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = indreg1; }
+
+adr0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = imm1; }
+
+adr0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = limm1; }
+
+adr0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adr1; }
+
+adr0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrreg1; }
+
+adr0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrx1; }
+
+adr0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = regx1; }
+
+adrreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = reg1; }
+
+adrreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = indreg1; }
+
+adrreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = imm1; }
+
+adrreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = limm1; }
+
+adrreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adr1; }
+
+adrreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrreg1; }
+
+adrreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrx1; }
+
+adrreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = regx1; }
+
+adrx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = reg1; }
+
+adrx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = indreg1; }
+
+adrx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = imm1; }
+
+adrx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = limm1; }
+
+adrx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adr1; }
+
+adrx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrreg1; }
+
+adrx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrx1; }
+
+adrx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = regx1; }
+
+regx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = reg1; }
+
+regx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = indreg1; }
+
+regx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = imm1; }
+
+regx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = limm1; }
+
+regx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adr1; }
+
+regx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrreg1; }
+
+regx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrx1; }
+
+regx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = regx1; }
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.c
new file mode 100644
index 000000000..61e1bfa4b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.c
@@ -0,0 +1,216 @@
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)(int)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)(int)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+int glob0, glob1;
+
+#define type float
+
+reg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = reg1; }
+
+reg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = indreg1; }
+
+reg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = imm1; }
+
+reg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = limm1; }
+
+reg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adr1; }
+
+reg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrreg1; }
+
+reg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrx1; }
+
+reg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = regx1; }
+
+indreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = reg1; }
+
+indreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = indreg1; }
+
+indreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = imm1; }
+
+indreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = limm1; }
+
+indreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adr1; }
+
+indreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrreg1; }
+
+indreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrx1; }
+
+indreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = regx1; }
+
+adr0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = reg1; }
+
+adr0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = indreg1; }
+
+adr0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = imm1; }
+
+adr0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = limm1; }
+
+adr0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adr1; }
+
+adr0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrreg1; }
+
+adr0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrx1; }
+
+adr0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = regx1; }
+
+adrreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = reg1; }
+
+adrreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = indreg1; }
+
+adrreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = imm1; }
+
+adrreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = limm1; }
+
+adrreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adr1; }
+
+adrreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrreg1; }
+
+adrreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrx1; }
+
+adrreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = regx1; }
+
+adrx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = reg1; }
+
+adrx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = indreg1; }
+
+adrx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = imm1; }
+
+adrx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = limm1; }
+
+adrx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adr1; }
+
+adrx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrreg1; }
+
+adrx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrx1; }
+
+adrx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = regx1; }
+
+regx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = reg1; }
+
+regx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = indreg1; }
+
+regx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = imm1; }
+
+regx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = limm1; }
+
+regx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adr1; }
+
+regx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrreg1; }
+
+regx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrx1; }
+
+regx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = regx1; }
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.x b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.x
new file mode 100644
index 000000000..121fcfecc
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SFset.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { [check_effective_target_int16] } {
+ return 1
+}
+
+return 0;
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIcmp.c
new file mode 100644
index 000000000..4a9e0d57f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIcmp.c
@@ -0,0 +1,280 @@
+#define type int
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIset.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIset.c
new file mode 100644
index 000000000..5fb93579f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/SIset.c
@@ -0,0 +1,216 @@
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)(int)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)(int)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+int glob0, glob1;
+
+#define type int
+
+reg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = reg1; }
+
+reg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = indreg1; }
+
+reg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = imm1; }
+
+reg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = limm1; }
+
+reg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adr1; }
+
+reg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrreg1; }
+
+reg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = adrx1; }
+
+reg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{reg0 = regx1; }
+
+indreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = reg1; }
+
+indreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = indreg1; }
+
+indreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = imm1; }
+
+indreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = limm1; }
+
+indreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adr1; }
+
+indreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrreg1; }
+
+indreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = adrx1; }
+
+indreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{indreg0 = regx1; }
+
+adr0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = reg1; }
+
+adr0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = indreg1; }
+
+adr0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = imm1; }
+
+adr0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = limm1; }
+
+adr0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adr1; }
+
+adr0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrreg1; }
+
+adr0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = adrx1; }
+
+adr0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adr0 = regx1; }
+
+adrreg0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = reg1; }
+
+adrreg0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = indreg1; }
+
+adrreg0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = imm1; }
+
+adrreg0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = limm1; }
+
+adrreg0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adr1; }
+
+adrreg0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrreg1; }
+
+adrreg0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = adrx1; }
+
+adrreg0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrreg0 = regx1; }
+
+adrx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = reg1; }
+
+adrx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = indreg1; }
+
+adrx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = imm1; }
+
+adrx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = limm1; }
+
+adrx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adr1; }
+
+adrx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrreg1; }
+
+adrx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = adrx1; }
+
+adrx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{adrx0 = regx1; }
+
+regx0reg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = reg1; }
+
+regx0indreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = indreg1; }
+
+regx0imm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = imm1; }
+
+regx0limm1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = limm1; }
+
+regx0adr1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adr1; }
+
+regx0adrreg1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrreg1; }
+
+regx0adrx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = adrx1; }
+
+regx0regx1_set (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{regx0 = regx1; }
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UHIcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UHIcmp.c
new file mode 100644
index 000000000..529e3a33f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UHIcmp.c
@@ -0,0 +1,280 @@
+#define type unsigned short
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UQIcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UQIcmp.c
new file mode 100644
index 000000000..3e9cdebc9
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/UQIcmp.c
@@ -0,0 +1,280 @@
+#define type unsigned char
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)11111111)
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/USIcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/USIcmp.c
new file mode 100644
index 000000000..69788a45b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/USIcmp.c
@@ -0,0 +1,280 @@
+#define type unsigned int
+
+type glob0, glob1;
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)(11111111 & ~(__alignof__ (type) - 1)))
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+reg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= reg1) return 1; else return 0;}
+
+reg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= indreg1) return 1; else return 0;}
+
+reg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= imm1) return 1; else return 0;}
+
+reg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= limm1) return 1; else return 0;}
+
+reg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adr1) return 1; else return 0;}
+
+reg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrreg1) return 1; else return 0;}
+
+reg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= adrx1) return 1; else return 0;}
+
+reg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (reg0 <= regx1) return 1; else return 0;}
+
+indreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= reg1) return 1; else return 0;}
+
+indreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= indreg1) return 1; else return 0;}
+
+indreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= imm1) return 1; else return 0;}
+
+indreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= limm1) return 1; else return 0;}
+
+indreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adr1) return 1; else return 0;}
+
+indreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrreg1) return 1; else return 0;}
+
+indreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= adrx1) return 1; else return 0;}
+
+indreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (indreg0 <= regx1) return 1; else return 0;}
+
+imm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= reg1) return 1; else return 0;}
+
+imm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= indreg1) return 1; else return 0;}
+
+imm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= imm1) return 1; else return 0;}
+
+imm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= limm1) return 1; else return 0;}
+
+imm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adr1) return 1; else return 0;}
+
+imm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrreg1) return 1; else return 0;}
+
+imm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= adrx1) return 1; else return 0;}
+
+imm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (imm0 <= regx1) return 1; else return 0;}
+
+limm0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= reg1) return 1; else return 0;}
+
+limm0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= indreg1) return 1; else return 0;}
+
+limm0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= imm1) return 1; else return 0;}
+
+limm0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= limm1) return 1; else return 0;}
+
+limm0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adr1) return 1; else return 0;}
+
+limm0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrreg1) return 1; else return 0;}
+
+limm0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= adrx1) return 1; else return 0;}
+
+limm0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (limm0 <= regx1) return 1; else return 0;}
+
+adr0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= reg1) return 1; else return 0;}
+
+adr0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= indreg1) return 1; else return 0;}
+
+adr0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= imm1) return 1; else return 0;}
+
+adr0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= limm1) return 1; else return 0;}
+
+adr0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adr1) return 1; else return 0;}
+
+adr0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrreg1) return 1; else return 0;}
+
+adr0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= adrx1) return 1; else return 0;}
+
+adr0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adr0 <= regx1) return 1; else return 0;}
+
+adrreg0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= reg1) return 1; else return 0;}
+
+adrreg0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= indreg1) return 1; else return 0;}
+
+adrreg0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= imm1) return 1; else return 0;}
+
+adrreg0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= limm1) return 1; else return 0;}
+
+adrreg0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adr1) return 1; else return 0;}
+
+adrreg0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrreg1) return 1; else return 0;}
+
+adrreg0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= adrx1) return 1; else return 0;}
+
+adrreg0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrreg0 <= regx1) return 1; else return 0;}
+
+adrx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= reg1) return 1; else return 0;}
+
+adrx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= indreg1) return 1; else return 0;}
+
+adrx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= imm1) return 1; else return 0;}
+
+adrx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= limm1) return 1; else return 0;}
+
+adrx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adr1) return 1; else return 0;}
+
+adrx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrreg1) return 1; else return 0;}
+
+adrx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= adrx1) return 1; else return 0;}
+
+adrx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (adrx0 <= regx1) return 1; else return 0;}
+
+regx0reg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= reg1) return 1; else return 0;}
+
+regx0indreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= indreg1) return 1; else return 0;}
+
+regx0imm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= imm1) return 1; else return 0;}
+
+regx0limm1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= limm1) return 1; else return 0;}
+
+regx0adr1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adr1) return 1; else return 0;}
+
+regx0adrreg1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrreg1) return 1; else return 0;}
+
+regx0adrx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= adrx1) return 1; else return 0;}
+
+regx0regx1 (r0, r1, x0, x1, p0, p1)
+type r0, r1; type *p0, *p1;
+{if (regx0 <= regx1) return 1; else return 0;}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a.c
new file mode 100644
index 000000000..47fb1f493
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a & 65535;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a1.c
new file mode 100644
index 000000000..654781d05
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a1.c
@@ -0,0 +1,7 @@
+int
+foo (a, p)
+ int *p;
+{
+ p[0] = 85 * a;
+ p[1] = -86 * a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a3.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a3.c
new file mode 100644
index 000000000..85d2a2426
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/a3.c
@@ -0,0 +1,12 @@
+foo (a)
+{
+ int i;
+
+ for (i = 1; i < a; i++)
+ ;
+ {
+ int b = (int) &foo;
+
+ return (a & b) == 0;
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aa.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aa.c
new file mode 100644
index 000000000..61a4147af
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aa.c
@@ -0,0 +1,8 @@
+#define w 20
+#define c 1
+
+foo (a)
+ unsigned a;
+{
+ return ((a & ((1 << w) - 1)) << c) > 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aaa.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aaa.c
new file mode 100644
index 000000000..e31fb567c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aaa.c
@@ -0,0 +1,11 @@
+foo (a, b)
+{
+ int t;
+ while (b < 0)
+ {
+ t = a;
+ a = b;
+ b = t;
+ }
+ return a + b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/abs.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/abs.c
new file mode 100644
index 000000000..6a746b126
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/abs.c
@@ -0,0 +1,9 @@
+foo (a)
+{
+ return __builtin_abs (a);
+}
+
+main ()
+{
+ printf ("%d %d\n", foo (0x80000000), foo (12));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ac.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ac.c
new file mode 100644
index 000000000..1d3c085ee
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ac.c
@@ -0,0 +1,30 @@
+barfoo (a)
+{
+ return (a << 16) & ~0xffff;
+}
+
+foobar (a)
+{
+ return ((unsigned short) a) << 15;}
+
+foo (a)
+{
+ return (a & 0x121) << 31;
+}
+
+bar (a)
+{
+ return (a & ~0xffff) << 16;
+}
+
+main ()
+{
+ int a;
+
+ for (a = 1; a; a += a)
+ {
+ printf ("%d", (foo (a)));
+ }
+ puts ("");
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/acc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/acc.c
new file mode 100644
index 000000000..a4a027a5f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/acc.c
@@ -0,0 +1,8 @@
+foo (a)
+{
+ int b = a + 1;
+ int c = (short) a;
+ if (b)
+ return b;
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add.c
new file mode 100644
index 000000000..d796e41c7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add.c
@@ -0,0 +1,5 @@
+foo (a, b, p)
+ int *p;
+{
+ return 34 + *p;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add386.c
new file mode 100644
index 000000000..bfdffbfe2
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/add386.c
@@ -0,0 +1,4 @@
+main (a)
+{
+ return a + 128;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/addcc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/addcc.c
new file mode 100644
index 000000000..cf52307aa
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/addcc.c
@@ -0,0 +1,18 @@
+foo (p, a, b)
+ int *p;
+ int a;
+ int b;
+{
+
+ a += p[0];
+ b += p[1];
+ if (a == 0)
+ return b;
+ return a;
+}
+
+
+bar (a)
+{
+ return -a > 0 ? 1 : 2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andm.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andm.c
new file mode 100644
index 000000000..17101ae30
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andm.c
@@ -0,0 +1,15 @@
+foo (p)
+ int *p;
+{
+ return (*p & 255) == 0;
+}
+
+bar (a)
+{
+ return (a & 0xfff00000) == 0;
+}
+
+main ()
+{
+ printf ("%d%d\n", bar (-1), bar(0));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andmem.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andmem.c
new file mode 100644
index 000000000..10bad00f4
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andmem.c
@@ -0,0 +1,22 @@
+void p1 (p) int *p;
+{ *p &= ~0xff;
+}
+void p2 (p) int *p;
+{ *p &= ~0xff00;
+}
+void p3 (p) int *p;
+{ *p &= ~0xffff0000;
+}
+void p4 (p) int *p;
+{ *p &= ~0xffff;
+}
+
+main ()
+{
+ int a;
+
+ a = 0x12345678; p1 (&a); printf ("%x\n", a);
+ a = 0x12345678; p2 (&a); printf ("%x\n", a);
+ a = 0x12345678; p3 (&a); printf ("%x\n", a);
+ a = 0x12345678; p4 (&a); printf ("%x\n", a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andn.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andn.c
new file mode 100644
index 000000000..2e38dd0e3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andn.c
@@ -0,0 +1,5 @@
+foo (a)
+{
+ int b = 0x1fff;
+ return a & ~b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andok.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andok.c
new file mode 100644
index 000000000..d55bd01b7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andok.c
@@ -0,0 +1,6 @@
+foo (a, b, p)
+ int *p;
+{
+ p[1] = a & 0xfff0000;
+ p[2] = b & 0xfff0000;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsi.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsi.c
new file mode 100644
index 000000000..b9c3c76de
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsi.c
@@ -0,0 +1,4 @@
+foo ()
+{
+ return (int)&foo;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsparc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsparc.c
new file mode 100644
index 000000000..62f0de003
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/andsparc.c
@@ -0,0 +1,11 @@
+foo (int *p)
+{
+ int a, b;
+
+ a = 123456;
+ a += p[0];
+ b = p[0];
+ if (a == 0)
+ return b;
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aos.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aos.c
new file mode 100644
index 000000000..77c92f677
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/aos.c
@@ -0,0 +1,8 @@
+foo (p)
+ int *p;
+{
+ if ((int) p > 0)
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/arr.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/arr.c
new file mode 100644
index 000000000..ed56667dd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/arr.c
@@ -0,0 +1,9 @@
+foo (a, b, c)
+{
+ bar (a, b);
+ {
+ int arr[10];
+ arr[c] = b;
+ bar (arr[0], arr[1]);
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/as.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/as.c
new file mode 100644
index 000000000..172f88355
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/as.c
@@ -0,0 +1,14 @@
+
+#define S 31
+#define A 17
+
+foo (a)
+ unsigned a;
+{
+ return (a >> S) & ((1 << A) - 1);
+}
+
+main ()
+{
+ printf ("%d%d\n", foo (-1), foo (0));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ase.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ase.c
new file mode 100644
index 000000000..2d3d8edbd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ase.c
@@ -0,0 +1,10 @@
+ase (p)
+ short *p;
+{
+ int a;
+ a = p[1];
+ p[2] = a;
+ if ((short) a)
+ p[a]++;
+ return (a == 0);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b.c
new file mode 100644
index 000000000..498d7552a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b.c
@@ -0,0 +1,4 @@
+main ()
+{
+ *(short *) 25 = 123;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b1.c
new file mode 100644
index 000000000..b6737594c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b1.c
@@ -0,0 +1,11 @@
+foo (long long x)
+{
+ if (x--)
+ return 255;
+ return 0;
+}
+
+main ()
+{
+ printf ("%d\n", foo (0));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b2.c
new file mode 100644
index 000000000..96e4556a5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b2.c
@@ -0,0 +1,24 @@
+
+struct s
+{
+ unsigned a : 8;
+ unsigned b : 8;
+ unsigned c : 8;
+ unsigned d : 8;
+};
+
+/*
+struct
+{
+ unsigned a : 8;
+ unsigned b : 16;
+ unsigned c : 8;
+};
+*/
+
+struct s
+foo (struct s s, int i)
+{
+ s.b = i;
+ return s;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b3.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b3.c
new file mode 100644
index 000000000..af693f779
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b3.c
@@ -0,0 +1,12 @@
+struct tree_common
+{
+ unsigned int code : 9;
+ unsigned int code2 : 7;
+};
+
+static int
+duplicate_decls (x)
+ register struct tree_common x;
+{
+ return x.code2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b88.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b88.c
new file mode 100644
index 000000000..971c7c76d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/b88.c
@@ -0,0 +1,12 @@
+foo (double d)
+{
+ d = -d;
+ if (d < 0.0)
+ return 1;
+ return 2;
+}
+
+main ()
+{
+ foo (0.0);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bad.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bad.c
new file mode 100644
index 000000000..8cc84973b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bad.c
@@ -0,0 +1,26 @@
+typedef union longlong
+{
+ struct {unsigned short h0, h1, h2, h3;} h;
+ struct {signed long low, high;} si;
+ struct {unsigned long low, high;} ui;
+ signed long long sll;
+ unsigned long long ull;
+} long_long;
+
+
+long long
+__negdi2 (u)
+ long long u;
+{
+ long_long uu;
+
+ uu.sll = u;
+
+ uu.si.low = -uu.si.low;
+ if (uu.si.low == 0)
+ uu.si.high = -uu.si.high;
+ else
+ uu.si.high = ~uu.si.high;
+
+ return uu.sll;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/band.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/band.c
new file mode 100644
index 000000000..74b02fd3b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/band.c
@@ -0,0 +1,16 @@
+foo (a)
+{
+ return (a & (1 << 31)) != 0;
+}
+
+main ()
+{
+ if (foo (0))
+ puts ("foo");
+ else
+ puts ("bar");
+ if (foo (~0))
+ puts ("foo");
+ else
+ puts ("bar");
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb0.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb0.c
new file mode 100644
index 000000000..aab6d683f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb0.c
@@ -0,0 +1,5 @@
+foo (a)
+{
+ return (a & 0xfff000) != 0;
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb1.c
new file mode 100644
index 000000000..3f9aebe03
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bb1.c
@@ -0,0 +1,8 @@
+foo (a)
+{
+ int b = 32;
+ if (b & a)
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bbb.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bbb.c
new file mode 100644
index 000000000..837dd9ecf
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bbb.c
@@ -0,0 +1,12 @@
+struct looksets
+ {
+ int lset[10];
+ };
+
+struct looksets lkst[];
+
+flset( p )
+struct looksets *p;
+{
+ p-- > lkst;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bc.c
new file mode 100644
index 000000000..c713bb61b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bc.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a % (1 << b);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bcopy.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bcopy.c
new file mode 100644
index 000000000..aed994e57
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bcopy.c
@@ -0,0 +1,68 @@
+void
+bcopy1 (s, d, c)
+ long long *s;
+ long long *d;
+ int c;
+{
+ int i;
+ c = c / 8;
+ for (i = 0; i < c; i++)
+ d[i] = s[i];
+}
+
+void
+bcopy2 (s, d, c)
+ long *s;
+ long *d;
+ int c;
+{
+ int i;
+ c = c / 4;
+ for (i = 0; i < c; i++)
+ d[i] = s[i];
+}
+
+
+void
+bcopy3 (s, d, c)
+ char *s;
+ char *d;
+ int c;
+{
+ long long z0, z1;
+ int r = d - s;
+
+ int i;
+
+ c /= 16;
+
+ z0 = *((long long *) s);
+ s += 8;
+ z1 = *((long long *) s);
+ s += 8;
+ for (i = 0; i < c; i++)
+ {
+ *(long long *)(s + r) = z0;
+ z0 = *((long long *) s);
+ s += 8;
+ *(long long *)(s + r) = z1;
+ z1 = *((long long *) s);
+ s += 8;
+ }
+}
+
+#if defined(STACK_SIZE) && STACK_SIZE < 16384
+#define BYTES STACK_SIZE
+#else
+#define BYTES 16384
+#endif
+
+main ()
+{
+ long long s[BYTES / 8];
+ long long d[BYTES / 8];
+ int i;
+
+ for (i = 1; i < 67108864 / BYTES; i++)
+ bcopy (s, d, BYTES);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bf.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bf.c
new file mode 100644
index 000000000..821623df0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bf.c
@@ -0,0 +1,31 @@
+typedef unsigned long uint32;
+typedef signed long sint32;
+
+uint32
+ext (sint32 src, unsigned o5, unsigned w5)
+{
+ return (w5 == 0) ? src >> o5 : (src << (( - o5 - w5) & 31)) >> (32 - w5);
+}
+
+uint32
+extu (uint32 src, unsigned o5, unsigned w5)
+{
+ return (w5 == 0) ? src >> o5 : (src << (( - o5 - w5) & 31)) >> (32 - w5);
+}
+
+uint32
+mak (uint32 src, unsigned o5, unsigned w5)
+{
+ return (w5 == 0) ? src << o5 : (src << (32 - w5)) >> (( - o5 - w5) & 31);
+}
+
+uint32
+rot (uint32 src, unsigned o5)
+{
+ return (src >> o5) | (src << (( - o5) & 31));
+}
+
+main (int argc, char **argv)
+{
+ printf ("%x\n", clr (0xffffffff, atoi (argv[2]), atoi (argv[1])));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfins.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfins.c
new file mode 100644
index 000000000..e626d82b3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfins.c
@@ -0,0 +1,15 @@
+struct foo
+{
+ unsigned j : 16;
+ unsigned i : 16;
+};
+
+struct foo
+foo (a, b)
+ struct foo a;
+ int b;
+{
+ a.j = 123;
+ a.i = b;
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfx.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfx.c
new file mode 100644
index 000000000..d47bd7d18
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bfx.c
@@ -0,0 +1,9 @@
+foo (x, c)
+{
+ return x << -c;
+}
+
+main ()
+{
+ printf ("%x\n", foo (0xf05, -4));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bge.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bge.c
new file mode 100644
index 000000000..55f478829
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bge.c
@@ -0,0 +1,7 @@
+foo (a)
+ double a;
+{
+ if (a >= 0)
+ return 1;
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bit.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bit.c
new file mode 100644
index 000000000..e76bb45e7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bit.c
@@ -0,0 +1,13 @@
+bar (a)
+{
+ return (a == 0);
+}
+
+foo (a)
+ int a;
+{
+ if ((a & (1 << 26)) >= 0)
+ return 1;
+ else
+ return 2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitf.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitf.c
new file mode 100644
index 000000000..5b0aefc83
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitf.c
@@ -0,0 +1,17 @@
+#define int unsigned
+
+struct foo
+{
+ int aa : 1;
+ int a : 9;
+ int c : 16;
+ int d : 6;
+};
+
+
+int
+foo (a, b)
+ struct foo a;
+{
+ return a.d == 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitw.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitw.c
new file mode 100644
index 000000000..585cd32e6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bitw.c
@@ -0,0 +1,9 @@
+foo (a)
+ unsigned a;
+{
+ unsigned b = 0;
+
+ if ((a & 12345678) > b)
+ return 1;
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/blk.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/blk.c
new file mode 100644
index 000000000..18a9545cc
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/blk.c
@@ -0,0 +1,18 @@
+struct
+{
+ double a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t;
+} foo, bar;
+
+foobar ()
+{
+ foo = bar;
+ xxx (&foo, &bar);
+}
+
+main ()
+{
+ bar.g = 1.0;
+ foo.g = 2.0;
+ foobar ();
+ printf ("%lf\n", foo.g);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt.c
new file mode 100644
index 000000000..ac20c0567
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt.c
@@ -0,0 +1,7 @@
+main ()
+{
+ int i;
+
+ for (i = 1000000; --i;)
+ ;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt386.c
new file mode 100644
index 000000000..283ab5fa6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bt386.c
@@ -0,0 +1,18 @@
+foo (a, b)
+{
+ return (a & (1 << b)) != 0;
+}
+
+bar (a, b)
+{
+ a ^= (1 << b);
+ return a != 0;
+}
+
+main ()
+{
+ int i;
+ for (i = 0; i < 32; i++)
+ printf ("%d ", foo (0x8000000f, i));
+ puts ("");
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bug.c
new file mode 100644
index 000000000..447eb7af2
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bug.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a - 65536;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bugc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bugc.c
new file mode 100644
index 000000000..b2ce1fad8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bugc.c
@@ -0,0 +1,7 @@
+
+int
+reg0indreg1 (r0, p1)
+ short r0; short *p1;
+{
+ return (r0);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/buns.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/buns.c
new file mode 100644
index 000000000..f206bfaed
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/buns.c
@@ -0,0 +1,12 @@
+foo (a)
+{
+ int bar = 0;
+
+ return (unsigned) (a - 1) <= (unsigned) bar;
+}
+
+main ()
+{
+ if (foo (-1))
+ puts ("The largest possible unsigned <= 0 on this machine...");
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bx.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bx.c
new file mode 100644
index 000000000..274fb015c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/bx.c
@@ -0,0 +1,12 @@
+unsigned
+good (unsigned src, unsigned o5, unsigned w5)
+{
+ return src & ~((w5 == 0) ? (~0 << o5) : (1 << o5));
+}
+
+unsigned
+bad (unsigned src, unsigned o5, unsigned w5)
+{
+ return src & ((w5 == 0) ? ~(~0 << o5) : ~(1 << o5));
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c.c
new file mode 100644
index 000000000..384ee3e3c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c.c
@@ -0,0 +1,17 @@
+foo (a, b)
+ long long a, b;
+{
+ if (a & ~b)
+ return 1;
+ else
+ return 0;
+}
+
+bar (a, b)
+ long long a, b;
+{
+ if (a & ~b & ((long long) 87612378))
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c1.c
new file mode 100644
index 000000000..f50d437f6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c1.c
@@ -0,0 +1,7 @@
+unsigned
+rec (a, b)
+ unsigned a;
+ unsigned b;
+{
+ return a * rec (a - 1, b + 1);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c2.c
new file mode 100644
index 000000000..ef5a71188
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/c2.c
@@ -0,0 +1,5 @@
+foo (a)
+{
+ bar (a);
+ bar (a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call.c
new file mode 100644
index 000000000..c81060383
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call.c
@@ -0,0 +1,7 @@
+int foo () {}
+
+main (a, b)
+{
+ foo (foo (a, b), foo (b, a));
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call386.c
new file mode 100644
index 000000000..c82a3be34
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/call386.c
@@ -0,0 +1,20 @@
+void foo () {}
+
+int main ()
+{
+ int i;
+ for (i = 100000; i >= 0; i--)
+ {
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ foo ();
+ }
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/callind.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/callind.c
new file mode 100644
index 000000000..74c0f1f9c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/callind.c
@@ -0,0 +1,8 @@
+call (foo, a)
+ int (**foo) ();
+{
+
+ (foo)[1] = call;
+
+ foo[a] (1);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cc.c
new file mode 100644
index 000000000..e29bec49d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cc.c
@@ -0,0 +1,96 @@
+cc8 (a, b)
+{
+ if (a < 0)
+ goto L1;
+ if (a == 0)
+ goto L2;
+ L1:b++;
+ L2:b++;
+ return b;
+}
+
+cc7 (a)
+ long long a;
+{
+ if (a < 0)
+ return 1;
+ else
+ return 0;
+}
+
+cc6 (float a, double p)
+{
+ p = a;
+ if (p < 0)
+ return p;
+ else
+ return p + 1;
+}
+
+cc5 (p, a)
+ char *p;
+ char a;
+{
+ p[2] = a;
+ if (a)
+ return 0;
+ else
+ return 1;
+}
+
+
+cc4 (a, b, p)
+ int a, b;
+ int *p;
+{
+ a = (int short)b;
+ *p = a;
+ if ((int) a < 0)
+ return 0;
+ else
+ return 1;
+}
+
+
+cc1 (a, b)
+{
+ int x = 0;
+
+ if ((int) a < (int) b)
+ {
+ if ((unsigned) a < (unsigned) b)
+ x++;
+ x++;
+ }
+
+ return x;
+}
+
+cc2 (a, b)
+{
+ int x = 0;
+
+ if ((int) a <= (int) b)
+ {
+ if ((int) a < (int) b)
+ x++;
+ x++;
+ }
+
+ return x;
+}
+
+cc3 (a, b)
+{
+ int x = 0;
+
+ a += b;
+ if ((unsigned) a > 0)
+ {
+ if (a == 0)
+ x++;
+ x++;
+ }
+
+ return x;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/charmtst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/charmtst.c
new file mode 100644
index 000000000..2945f198e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/charmtst.c
@@ -0,0 +1,15 @@
+c_move_tst (char b)
+{
+ char a;
+
+ a = b;
+ b = 'b';
+ foo (a);
+ foo (b);
+ foo (a);
+ bar (a, b);
+ b = a;
+ if (b == 0)
+ a++;
+ return a + b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmb.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmb.c
new file mode 100644
index 000000000..1fd946182
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmb.c
@@ -0,0 +1,6 @@
+foo (p1, p2)
+ short p1, *p2;
+{
+ int a;
+ return (int) p1 + (int) *p2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmp.c
new file mode 100644
index 000000000..a82fe4247
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmp.c
@@ -0,0 +1,11 @@
+struct fooalign {char x; double d;};
+union fooround {long x; double d;};
+
+int
+foo ()
+{
+ int extra = 4;
+ if (extra < sizeof (union fooround))
+ extra = sizeof (union fooround);
+ return extra;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmphi.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmphi.c
new file mode 100644
index 000000000..1ffc2140f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmphi.c
@@ -0,0 +1,4 @@
+foo (short *p, short a)
+{
+ return a < *p;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmpsi386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmpsi386.c
new file mode 100644
index 000000000..50b08d712
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmpsi386.c
@@ -0,0 +1,14 @@
+foo (a, p)
+ register int a;
+ int *p;
+{
+
+ for (a = 10000000; a >= *p; a--)
+ ;
+}
+
+main ()
+{
+ int a;
+ foo (a, a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmul.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmul.c
new file mode 100644
index 000000000..cce20bc35
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cmul.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a * 84;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cn1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cn1.c
new file mode 100644
index 000000000..866778ca1
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cn1.c
@@ -0,0 +1,5 @@
+int
+foo ()
+{
+ return 7561;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/comb.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/comb.c
new file mode 100644
index 000000000..a4689079b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/comb.c
@@ -0,0 +1,7 @@
+foo (a, b)
+{
+ int c = a & b;
+ if ((a & b) == 0)
+ return 0;
+ return c;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/consec.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/consec.c
new file mode 100644
index 000000000..fd76cd2ee
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/consec.c
@@ -0,0 +1,17 @@
+int glob;
+
+conseq (a, b, c, d)
+ int *a, *b;
+{
+ a[2] = d;
+ a[1] = c;
+ sequence (a, b, c, d);
+ sequence (d, c, b, a);
+ b[0] = 0;
+ b[1] = 123;
+ a[0] = 321;
+ a[1] = 0;
+ sequence (111, 0, 0, 222, 0, 333);
+ ((int *)glob)[2] = c;
+ ((int *)glob)[3] = d;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/const.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/const.c
new file mode 100644
index 000000000..209fc7688
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/const.c
@@ -0,0 +1,4 @@
+main (a)
+{
+ return a + (~0 - 240);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv.c
new file mode 100644
index 000000000..70fc02412
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv.c
@@ -0,0 +1,32 @@
+double
+u2d (unsigned int u)
+{
+ return u;
+}
+
+double
+i2d (signed int i)
+{
+ return i;
+}
+
+unsigned int
+d2u (double d)
+{
+ return d;
+}
+
+signed int
+d2i (double d)
+{
+ return d;
+}
+
+main ()
+{
+ printf ("%lf, %lf, %lf\n", u2d (~0), u2d (1 << 31), u2d (1));
+ printf ("%lf, %lf, %lf\n", i2d (~0), i2d (1 << 31), i2d (1));
+
+ printf ("%u, %u, %u\n", d2u (u2d (~0)), d2u (u2d (1 << 31)), d2u (u2d (1)));
+ printf ("%d, %d, %d\n", d2i (i2d (~0)), d2i (i2d (1 << 31)), d2i (i2d (1)));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv_tst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv_tst.c
new file mode 100644
index 000000000..513d6a247
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/conv_tst.c
@@ -0,0 +1,66 @@
+#define ID_1 2400000000.0
+#define ID_2 1.7
+#define ID_3 -1.7
+
+unsigned ui;
+int si;
+
+conv_i1 ()
+{
+/*
+ ui = (unsigned) ID_1;
+ si = (int) ID_1;
+*/
+}
+
+conv_i2 ()
+{
+ ui = (unsigned) ID_2;
+ si = (int) ID_2;
+}
+
+conv_i3 ()
+{
+/* ui = (unsigned) ID_3;*/
+ si = (int) ID_3;
+}
+
+conv_1 (d)
+ double d;
+{
+ ui = (unsigned) d;
+/*
+ si = (int) d;
+*/
+}
+
+double
+foo (u)
+ unsigned u;
+{
+ return u;
+}
+
+main ()
+{
+ printf ("%lf\n", foo (2400000000));
+
+ conv_i1 ();
+ printf ("%lf, %u, %d\n", ID_1, ui, si);
+
+ conv_i2 ();
+ printf ("%lf, %u, %d\n", ID_2, ui, si);
+
+ conv_i3 ();
+ printf ("%lf, %u, %d\n", ID_3, ui, si);
+
+ conv_1 (ID_1);
+ printf ("%lf, %u, %d\n", ID_1, ui, si);
+
+ conv_1 (ID_2);
+ printf ("%lf, %u, %d\n", ID_2, ui, si);
+
+ conv_1 (ID_3);
+ printf ("%lf, %u, %d\n", ID_3, ui, si);
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cp.c
new file mode 100644
index 000000000..04b1420cb
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cp.c
@@ -0,0 +1,42 @@
+struct _obstack_chunk
+{
+ char *limit;
+ struct _obstack_chunk *prev;
+ char contents[4];
+};
+
+struct obstack
+{
+ long chunk_size;
+ struct _obstack_chunk* chunk;
+ char *object_base;
+ char *next_free;
+ char *chunk_limit;
+ int temp;
+ int alignment_mask;
+ struct _obstack_chunk *(*chunkfun) ();
+ void (*freefun) ();
+};
+
+struct fooalign {char x; double d;};
+union fooround {long x; double d;};
+
+void
+_obstack_begin (h, size, alignment, chunkfun, freefun)
+ struct obstack *h;
+ int size;
+ int alignment;
+ void * (*chunkfun) ();
+ void (*freefun) ();
+{
+ register struct _obstack_chunk* chunk;
+
+ if (alignment == 0)
+ alignment = ((char *)&((struct fooalign *) 0)->d - (char *)0);
+ if (size == 0)
+ {
+ int extra = 4;
+ if (extra < (sizeof (union fooround)))
+ extra = (sizeof (union fooround));
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/csebug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/csebug.c
new file mode 100644
index 000000000..f49f6842c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/csebug.c
@@ -0,0 +1,7 @@
+
+int
+reg0indreg1 (r0, p1)
+ short r0; short *p1;
+{
+ return (r0 + *p1);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cvt.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cvt.c
new file mode 100644
index 000000000..716659c47
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/cvt.c
@@ -0,0 +1,9 @@
+foo (p)
+ unsigned char *p;
+{
+ unsigned char a = 0;
+
+ if (*p > 0)
+ return 1;
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/d.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/d.c
new file mode 100644
index 000000000..5fca120d8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/d.c
@@ -0,0 +1,19 @@
+long long unsigned
+str2llu (str)
+ char *str;
+{
+ long long unsigned acc;
+ long long b = 10;
+ char d;
+ acc = *str++ - '0';
+ for (;;)
+ {
+ d = *str++;
+ if (d == '\0')
+ break;
+ d -= '0';
+ acc = acc * 10 + d;
+ }
+
+ return acc;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dbl_parm.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dbl_parm.c
new file mode 100644
index 000000000..ce5ba4f16
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dbl_parm.c
@@ -0,0 +1,10 @@
+foo (a, b, c)
+ double a;
+ int b;
+ double c;
+{
+ if (b)
+ return a + c;
+ else
+ return a - c;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dblbug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dblbug.c
new file mode 100644
index 000000000..cd13b7962
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dblbug.c
@@ -0,0 +1,21 @@
+union real_extract
+{
+ double d;
+ int i[sizeof (double ) / sizeof (int)];
+};
+
+typedef struct
+{
+ int zzzz;
+} *rtx;
+
+rtx
+immed_real_const_1 (d)
+ double d;
+{
+ union real_extract u;
+ register rtx r;
+
+ u.d = d;
+ foo (&(r->zzzz), &u);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ddd.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ddd.c
new file mode 100644
index 000000000..b0b6809dd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ddd.c
@@ -0,0 +1,7 @@
+int foo;
+int bar;
+
+main ()
+{
+ return foo + bar;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dead.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dead.c
new file mode 100644
index 000000000..795f7c7e4
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dead.c
@@ -0,0 +1,5 @@
+foo (a)
+{
+ ++a;
+ return a == 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/delay.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/delay.c
new file mode 100644
index 000000000..c77638352
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/delay.c
@@ -0,0 +1,11 @@
+foo (a, b)
+{
+ if (a == 1)
+ goto foo1;
+ if (a == 2)
+ goto foo2;
+ foo1:
+ return 2;
+ foo2:
+ return 3;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/di.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/di.c
new file mode 100644
index 000000000..476bf700f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/di.c
@@ -0,0 +1,12 @@
+long long
+foo (a, b)
+ long long a, b;
+{
+ return a * b;
+}
+
+main ()
+{
+ int a = foo ((long long) 2, (long long) 3);
+ printf ("%d\n", a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dic.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dic.c
new file mode 100644
index 000000000..9c2c9f90f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dic.c
@@ -0,0 +1,5 @@
+unsigned long long
+main ()
+{
+ return (unsigned long long) 7816234 << 671111;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dilayout.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dilayout.c
new file mode 100644
index 000000000..4bba661c0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dilayout.c
@@ -0,0 +1,33 @@
+struct ii
+{
+ int a;
+ int b;
+};
+
+struct foo
+{
+ int a;
+ struct ii ab;
+ int b;
+};
+
+struct ii
+foo (int *p, struct foo a)
+{
+ p[0] = a.a;
+ p[1] = a.ab.a;
+ p[2] = a.ab.b;
+ p[3] = a.b;
+ return a.ab;
+}
+
+str (struct ii ab, struct ii *p)
+{
+ *p = ab;
+}
+
+ll (long long ab, long long *p)
+{
+ *p = ab;
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimove.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimove.c
new file mode 100644
index 000000000..7caf3fa46
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimove.c
@@ -0,0 +1,4 @@
+foo (long long *p)
+{
+ p[0] = p[1];
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimul.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimul.c
new file mode 100644
index 000000000..c8529565f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dimul.c
@@ -0,0 +1,6 @@
+long long
+foo (a, b)
+ long long a, b;
+{
+ return a * b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/div.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/div.c
new file mode 100644
index 000000000..1f0904a64
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/div.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a / b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/divdf.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/divdf.c
new file mode 100644
index 000000000..5ea89ae3d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/divdf.c
@@ -0,0 +1,5 @@
+double
+foo (float a, float b)
+{
+ return (double)a / (double)b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dm.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dm.c
new file mode 100644
index 000000000..67c60ee98
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dm.c
@@ -0,0 +1,24 @@
+struct dm
+{
+ unsigned q;
+ unsigned r;
+};
+
+struct dm
+dm (a, b)
+ unsigned a, b;
+{
+ struct dm qr;
+
+ qr.q = a / b;
+ qr.r = a % b;
+ return qr;
+}
+
+main ()
+{
+ struct dm qr;
+
+ qr = dm (100, 30);
+ printf ("%u, %u\n", qr.q, qr.r);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dshift.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dshift.c
new file mode 100644
index 000000000..94750cc3c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dshift.c
@@ -0,0 +1,10 @@
+foo (b, c)
+ unsigned b, c;
+{
+ return (b << 12) | (c >> 20);
+}
+
+main ()
+{
+ printf ("0x%x\n", foo (0x11223344, 0xaabbccdd));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.c
new file mode 100644
index 000000000..d9f7d2ed2
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.c
@@ -0,0 +1,59 @@
+#include <limits.h>
+
+#if MASK & 1
+#define t11(x) x x x x x x x x x x x
+#define t16(x) x x x x x x x x x x x x x x x x
+#if INT_MAX < 2147483647
+#define M (sizeof (t11(t11(t16(t16(" "))))) - 1)
+#else
+#define M (sizeof (t16(t16(t16(t16(t16(" ")))))) - 1)
+#endif
+#endif
+#if MASK & 2
+#if INT_MAX < 2147483647
+#define M 30976
+#else
+#define M 1048576
+#endif
+#endif
+
+typedef struct s {
+ int c;
+ void *vp;
+ struct s *s;
+}s;
+
+typedef int (*fpt) (const char *, void *, int *);
+
+int M_var = M;
+
+extern void exit (int);
+
+int
+f (int start, int end, int *a, int *b, int c, s *sp)
+{
+ int count = 0;
+ int i;
+
+ for (i = start; i <= end; i++)
+ {
+ a[i] = b[i] + c;
+ count ++;
+ }
+ (*(fpt)sp->s->vp) ("Hello World!\n", &exit, &M_var);
+ return count;
+}
+
+int
+g (int i)
+{
+ switch (i)
+ {
+ case 1: return 42;
+ case 2: return 60;
+ case 3: return 7;
+ case 4: return 3;
+ case 5: return M;
+ default: return 0;
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.x b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.x
new file mode 100644
index 000000000..a8174e05c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.x
@@ -0,0 +1,40 @@
+# This checks if -fdump-noaddr dumps are done consistently.
+proc dump_compare { src options } {
+ global srcdir subdir
+ global tmpdir
+
+ global torture_with_loops
+ set option_list $torture_with_loops
+ set dumpbase [file tail $src]
+
+ # loop through all the options
+ foreach option $option_list {
+ file delete -force dump1
+ file mkdir dump1
+ c-torture-compile $src "$option $options -dumpbase dump1/$dumpbase -DMASK=1 -x c --param ggc-min-heapsize=1 -fdump-ipa-all -fdump-rtl-all -fdump-tree-all -fdump-noaddr"
+ file delete -force dump2
+ file mkdir dump2
+ c-torture-compile $src "$option $options -dumpbase dump2/$dumpbase -DMASK=2 -x c -fdump-ipa-all -fdump-rtl-all -fdump-tree-all -fdump-noaddr"
+ foreach dump1 [lsort [glob -nocomplain dump1/*]] {
+ regsub dump1/ $dump1 dump2/ dump2
+ set dumptail "gcc.c-torture/unsorted/[file tail $dump1]"
+ #puts "$option $dump1"
+ set tmp [ diff "$dump1" "$dump2" ]
+ if { $tmp == 0 } {
+ untested "$dumptail, $option comparison"
+ } elseif { $tmp == 1 } {
+ pass "$dumptail, $option comparison"
+ } else {
+ fail "$dumptail, $option comparison"
+ }
+ #exec diff $dump1 $dump2
+ }
+ }
+ file delete -force dump1
+ file delete -force dump2
+}
+
+catch {dump_compare $src $options} result
+puts $result
+verbose result
+return 1
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/e.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/e.c
new file mode 100644
index 000000000..fa20e00ef
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/e.c
@@ -0,0 +1,10 @@
+foo (short a, int *p, short *s)
+{
+ int i;
+ for (i = 10; i >= 0; i--)
+ {
+ a = (short) bar ();
+ p[i] = a;
+ s[i] = a;
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ex.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ex.c
new file mode 100644
index 000000000..f5d90fd2e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ex.c
@@ -0,0 +1,11 @@
+foo (a, b)
+{
+ if ((a & (1 << b)) == 0)
+ return 1;
+ return 0;
+}
+
+main ()
+{
+ printf ("%d\n", foo ());
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ext.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ext.c
new file mode 100644
index 000000000..9e8604ef2
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ext.c
@@ -0,0 +1,23 @@
+/* The bit-field below would have a problem if __INT_MAX__ is too
+ small. */
+#if __INT_MAX__ < 2147483647
+int
+main (void)
+{
+ exit (0);
+}
+#else
+struct foo
+{
+ unsigned b31 : 1;
+ unsigned b30 : 1;
+ unsigned b29 : 1;
+ unsigned b28 : 1;
+ unsigned rest : 28;
+};
+foo(a)
+ struct foo a;
+{
+ return a.b30;
+}
+#endif
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f1.c
new file mode 100644
index 000000000..446acc6e1
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f1.c
@@ -0,0 +1,5 @@
+double
+foo ()
+{
+ return 1.2587624368724;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f2.c
new file mode 100644
index 000000000..8bb384902
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/f2.c
@@ -0,0 +1,4 @@
+foo (double *p)
+{
+ p[0] = p[1];
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fdmul.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fdmul.c
new file mode 100644
index 000000000..711707b51
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fdmul.c
@@ -0,0 +1,2 @@
+double
+foo (float a, float b) { return (double) a * (double) b; }
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flo.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flo.c
new file mode 100644
index 000000000..2a213b7ab
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flo.c
@@ -0,0 +1,7 @@
+foo (a)
+ double a;
+{
+ double b = 0.0;
+
+ return (a == 0);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/float.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/float.c
new file mode 100644
index 000000000..b6789203b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/float.c
@@ -0,0 +1,6 @@
+double
+foo (a, b, c)
+ double a, b, c;
+{
+ return a * b + c * a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flt_const.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flt_const.c
new file mode 100644
index 000000000..65700ba77
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/flt_const.c
@@ -0,0 +1,5 @@
+double
+foo ()
+{
+ return 3.141592653589793238462643;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fnul.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fnul.c
new file mode 100644
index 000000000..b0c9816ad
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fnul.c
@@ -0,0 +1,23 @@
+main ()
+{
+ int i;
+ int f;
+
+ for (i = 0;; i--)
+ {
+ f = 0;
+
+ if ((i & (i - 1)) == 0)
+ {
+ printf ("d");
+ f = 1;
+ }
+ if ((i & -i) == i)
+ {
+ printf ("t");
+ f = 1;
+ }
+ if (f)
+ printf ("%d\n", i);
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/foo.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/foo.c
new file mode 100644
index 000000000..762d7e457
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/foo.c
@@ -0,0 +1,8 @@
+int *
+main (s1, s2)
+ int *s1; int *s2;
+{
+ while ((*s1++ = *s2++) != '\0')
+ ;
+ return s1 - 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/forgetcc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/forgetcc.c
new file mode 100644
index 000000000..4105408a0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/forgetcc.c
@@ -0,0 +1,11 @@
+foo (hp, p, a)
+ short *hp;
+ int *p;
+ int a;
+{
+ hp[10] = a;
+ p[0] = 10;
+ if (hp[10] > 0)
+ return 1;
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fq.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fq.c
new file mode 100644
index 000000000..c4ac36960
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/fq.c
@@ -0,0 +1,25 @@
+expand_to_ascii (int *i, int *o)
+{
+ unsigned x, y, out;
+ unsigned x1;
+
+ /* Big endian code. */
+
+ x = *i++;
+
+ y = x >> (32 - 13);
+ out = (y / 91);
+ out = (out << 8) | (y % 91);
+
+ x <<= 13;
+ y = x >> (32 - 13);
+ out = (out << 8) | (y / 91);
+ out = (out << 8) | (y % 91);
+
+ *o++ = out + 0x20202020;
+
+ /* 6 bits left in x. */
+
+ x1 = *i++;
+ x = (x << 26) | (x1 >> 6);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/g.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/g.c
new file mode 100644
index 000000000..e00f1244f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/g.c
@@ -0,0 +1,9 @@
+foo (a, b)
+ long long a, b;
+
+{
+ if (a == b)
+ return 0;
+ else
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gen_tst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gen_tst.c
new file mode 100644
index 000000000..5a7a3763a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gen_tst.c
@@ -0,0 +1,67 @@
+/* Compiler Test Generator Program.
+ Copyright (C) 1989 FSF. */
+
+
+#define E0 ((type *)10000000)
+#define reg0 r0
+#define indreg0 (*p0)
+#define imm0 22
+#define limm0 ((type)(int)&glob0)
+#define adr0 (*E0)
+#define adrreg0 (p0[10000000])
+#define adrx0 (E0[x0])
+#define regx0 (p0[x0])
+
+#define E1 ((type *)11111111)
+#define reg1 r1
+#define indreg1 (*p1)
+#define imm1 33
+#define limm1 ((type)(int)&glob1)
+#define adr1 (*E1)
+#define adrreg1 (p1[1111111/4])
+#define adrx1 (E1[x1])
+#define regx1 (p1[x1])
+
+int glob0, glob1;
+
+#define type double
+
+char *a0[] = {"reg0", "indreg0", "imm0", "limm0",
+ "adr0", "adrreg0", "adrx0", "regx0"};
+char *a1[] = {"reg1", "indreg1", "imm1", "limm1",
+ "adr1", "adrreg1", "adrx1", "regx1"};
+
+main_compare ()
+{
+ int i0, i1;
+
+ for (i0 = 0; i0 < 8; i0++)
+ {
+ for (i1 = 0; i1 < 8; i1++)
+ {
+ printf ("%s%s_cmp (r0, r1, x0, x1, p0, p1)\n", a0[i0], a1[i1]);
+ printf ("type r0, r1; type *p0, *p1;\n");
+ printf ("{if (%s <= %s) return 1; else return 0;}\n\n",
+ a0[i0], a1[i1], a0[i0]);
+ }
+ }
+}
+
+main_assign ()
+{
+ int i0, i1;
+
+ for (i0 = 0; i0 < 8; i0++)
+ {
+ if (i0 < 2 || i0 > 3)
+ for (i1 = 0; i1 < 8; i1++)
+ {
+ printf ("%s%s_set (r0, r1, x0, x1, p0, p1)\n", a0[i0], a1[i1]);
+ printf ("type r0, r1; type *p0, *p1;\n");
+ printf ("{%s = %s; }\n\n",
+ a0[i0], a1[i1]);
+ }
+ }
+}
+
+main () {main_assign ();}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/glob.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/glob.c
new file mode 100644
index 000000000..e3206154f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/glob.c
@@ -0,0 +1,12 @@
+typedef int tt;
+
+tt a1;
+tt a2;
+tt a3;
+
+foo ()
+{
+ a1++;
+ a2++;
+ a1++;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gronk.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gronk.c
new file mode 100644
index 000000000..c1bb767e5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/gronk.c
@@ -0,0 +1,8 @@
+test_opt (a, b)
+ unsigned a, b;
+{
+ a = a / b;
+ if (a == 0)
+ a++;
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hi.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hi.c
new file mode 100644
index 000000000..1624f7779
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hi.c
@@ -0,0 +1,5 @@
+foo (a, b)
+ short a, b;
+{
+ return a < b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hibug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hibug.c
new file mode 100644
index 000000000..ad5c82679
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/hibug.c
@@ -0,0 +1,15 @@
+struct foo
+{
+ short d;
+ int a;
+};
+
+int
+bar (d, u)
+ short d;
+ struct foo u;
+{
+
+ u.d = d;
+ return (int) (&u);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i++.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i++.c
new file mode 100644
index 000000000..01d9ca95a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i++.c
@@ -0,0 +1,7 @@
+int main ()
+{
+ int i = 2;
+
+ i = i++;
+ printf ("%d\n",i);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i.c
new file mode 100644
index 000000000..3bee8eacb
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/i.c
@@ -0,0 +1,8 @@
+ase (p)
+ short *p;
+{
+ int a;
+
+ a = *p;
+ *p = a + 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ic.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ic.c
new file mode 100644
index 000000000..150e1e8ed
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ic.c
@@ -0,0 +1,7 @@
+foo (int *ip, int a)
+{
+ a++;
+ if (a < ip[a])
+ return 1;
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/icmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/icmp.c
new file mode 100644
index 000000000..dc9678ec3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/icmp.c
@@ -0,0 +1,10 @@
+foo (a, b)
+{
+ b++;
+ if (a <= b)
+ if ((int) a < (int) b)
+ b--;
+ else
+ b++;
+ return b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ifreg.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ifreg.c
new file mode 100644
index 000000000..9e2f9562e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ifreg.c
@@ -0,0 +1,12 @@
+union foo
+{
+ float f;
+ int i;
+};
+
+foo (int a, float c)
+{
+ union foo b;
+ b.i = a;
+ return b.f + c;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/imm.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/imm.c
new file mode 100644
index 000000000..c3efba45e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/imm.c
@@ -0,0 +1,7 @@
+int
+imm ()
+
+{
+ return 11234;
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/isinf.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/isinf.c
new file mode 100644
index 000000000..12a828374
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/isinf.c
@@ -0,0 +1,5 @@
+int
+isinf ()
+{
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jmp.c
new file mode 100644
index 000000000..474206a1f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jmp.c
@@ -0,0 +1,20 @@
+foo (a)
+{
+ if (a)
+ goto a1;
+ goto a2;
+ a1: goto a3;
+ a2: goto a4;
+ a3: goto a5;
+ a4: goto a6;
+ a5: goto a7;
+ a6: goto a8;
+ a7: goto a9;
+ a8: goto a10;
+ a9: goto a11;
+ a10: goto a12;
+ a11: goto a13;
+ a12:;
+ a13:;
+ return -a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jumptab.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jumptab.c
new file mode 100644
index 000000000..d86c30e40
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/jumptab.c
@@ -0,0 +1,20 @@
+jumptab (a)
+{
+ int b;
+ switch (a)
+ {
+ case 0:
+ b = 6;break;
+ case 1:
+ b = 5;break;
+ case 2:
+ b = 4;break;
+ case 3:
+ b = 3;break;
+ case 4:
+ b = 2;break;
+ case 5:
+ b = 1;break;
+ }
+ return b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/l.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/l.c
new file mode 100644
index 000000000..cc23b190b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/l.c
@@ -0,0 +1,4 @@
+main (a)
+{
+ return - 256 + a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/layout.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/layout.c
new file mode 100644
index 000000000..04c825df6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/layout.c
@@ -0,0 +1,13 @@
+struct foo
+{
+ char a;
+};
+
+foo ()
+{
+ struct foo bar[3];
+ bar[0].a = '0';
+ bar[1].a = '1';
+ bar[2].a = '2';
+ foof (bar);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lbug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lbug.c
new file mode 100644
index 000000000..0440a0a7a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lbug.c
@@ -0,0 +1,7 @@
+long long x = 0;
+main()
+{
+ if (x--)
+ return 255;
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ll1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ll1.c
new file mode 100644
index 000000000..9009e77b6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ll1.c
@@ -0,0 +1,5 @@
+long long
+foo (long long a)
+{
+ return a + ((long long) 10230101 << 32) + 7561;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/llbug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/llbug.c
new file mode 100644
index 000000000..8c56dfbe7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/llbug.c
@@ -0,0 +1,13 @@
+union foo
+{
+ long long d;
+};
+
+int
+bar (long long d)
+{
+ union foo u;
+
+ u.d = d;
+ return (int) &u;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lll.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lll.c
new file mode 100644
index 000000000..dee9dc37d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lll.c
@@ -0,0 +1,45 @@
+
+byte_match_count2 (buf, n, xm, m1, m2, m3, m4)
+ unsigned *buf;
+ unsigned n;
+ unsigned xm;
+ unsigned m1, m2, m3, m4;
+{
+ unsigned w, cnt = 0;
+ unsigned *bp;
+
+ n /= 4;
+
+ bp = buf;
+ while (bp < buf + n)
+ {
+ w = *bp++;
+ w ^= xm;
+ cnt += ((m1 & w) == 0);
+ cnt += ((m2 & w) == 0);
+ cnt += ((m3 & w) == 0);
+ cnt += ((m4 & w) == 0);
+
+ w = *bp++;
+ w ^= xm;
+ cnt += ((m1 & w) == 0);
+ cnt += ((m2 & w) == 0);
+ cnt += ((m3 & w) == 0);
+ cnt += ((m4 & w) == 0);
+
+ w = *bp++;
+ w ^= xm;
+ cnt += ((m1 & w) == 0);
+ cnt += ((m2 & w) == 0);
+ cnt += ((m3 & w) == 0);
+ cnt += ((m4 & w) == 0);
+
+ w = *bp++;
+ w ^= xm;
+ cnt += ((m1 & w) == 0);
+ cnt += ((m2 & w) == 0);
+ cnt += ((m3 & w) == 0);
+ cnt += ((m4 & w) == 0);
+ }
+ return cnt;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/load8.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/load8.c
new file mode 100644
index 000000000..947a8165c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/load8.c
@@ -0,0 +1,4 @@
+foo ()
+{
+ return *(short *) 126;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loadhicc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loadhicc.c
new file mode 100644
index 000000000..a7540894f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loadhicc.c
@@ -0,0 +1,15 @@
+typedef int xtype;
+
+foo (p, pc)
+ xtype *p;
+ char *pc;
+{
+ xtype a;
+ unsigned b = 0;
+
+ a = *p;
+ p[1] = a;
+ if ((unsigned) p[1] > 0)
+ return 1;
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/log2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/log2.c
new file mode 100644
index 000000000..39b857840
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/log2.c
@@ -0,0 +1,6 @@
+log2 (a, b)
+{
+ int c;
+ c = ~(~a & ~b);
+ return c;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/logic.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/logic.c
new file mode 100644
index 000000000..a9d6e9d0c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/logic.c
@@ -0,0 +1,37 @@
+logic (a, b)
+ int *a, b;
+{
+ if (*a & 123)
+ b = 1;
+ if (*a & ~222)
+ b = 2;
+ if (124 & *a)
+ b = 3;
+ if (~111 & *a)
+ b = 4;
+
+ if (~*a & 23)
+ b = 1;
+ if (~*a & ~22)
+ b = 2;
+ if (24 & ~*a)
+ b = 3;
+ if (~11 & ~*a)
+ b = 4;
+
+ if (~*a & b)
+ b = 1;
+ if (~*a & ~b)
+ b = 2;
+ if (*a & ~*a)
+ b = 3;
+ return b;
+}
+
+x (a, b, c)
+{
+ for (a = 0; --a > 0;);
+ for (b = -1; --b > 0;);
+ for (c = -65536; --c > 0;);
+ return a + b + c;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop-1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop-1.c
new file mode 100644
index 000000000..e50687a9f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop-1.c
@@ -0,0 +1,11 @@
+foo (a)
+{
+ while ((a -= 1) != -1)
+ bar (270000);
+ putchar ('\n');
+}
+
+main ()
+{
+ foo (5);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop386.c
new file mode 100644
index 000000000..429a320ab
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/loop386.c
@@ -0,0 +1,15 @@
+foo (a)
+{
+ do
+ {
+ puts ("a");
+ a -= 1;
+ }
+ while (a != 0);
+}
+
+main ()
+{
+ int p[100];
+ printf ("%d\n", foo (3));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lop.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lop.c
new file mode 100644
index 000000000..72464111d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/lop.c
@@ -0,0 +1,6 @@
+lop (a)
+{
+ do
+ a--;
+ while (a >= -1);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m1.c
new file mode 100644
index 000000000..8660f60c9
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m1.c
@@ -0,0 +1,5 @@
+foo (p)
+ int *p;
+{
+ *p = 1234;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m2.c
new file mode 100644
index 000000000..203c855b5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m2.c
@@ -0,0 +1,44 @@
+void
+store16 (p, a)
+ short *p;
+ short a;
+{
+ *p = a;
+}
+
+signed int
+sign_extend16 (p)
+ signed short *p;
+{
+ return *p;
+}
+
+unsigned int
+zero_extend16 (p)
+ unsigned short *p;
+{
+ return *p;
+}
+
+void
+store8 (p, a)
+ char *p;
+ char a;
+{
+ *p = a;
+}
+
+signed int
+sign_extend8 (p)
+ signed char *p;
+{
+ return *p;
+}
+
+unsigned int
+zero_extend8 (p)
+ unsigned char *p;
+{
+ return *p;
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m5.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m5.c
new file mode 100644
index 000000000..23ad8445d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m5.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a * 5 + 12;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m68.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m68.c
new file mode 100644
index 000000000..a1ee486d4
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/m68.c
@@ -0,0 +1,14 @@
+foo (a)
+{
+ return a | 12345;
+}
+
+bar (a)
+{
+ return a & (0xffff0000 | 12345);
+}
+
+foobar (a)
+{
+ return a - 128;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mbyte.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mbyte.c
new file mode 100644
index 000000000..a8a23eab9
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mbyte.c
@@ -0,0 +1,14 @@
+foo1 (p)
+ char *p;
+{
+ p[0] = p[1];
+ return p[0];
+}
+
+foo2 (p, x)
+ char *p;
+{
+ p[0] = x;
+ return p[0];
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mchar.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mchar.c
new file mode 100644
index 000000000..a1b106037
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mchar.c
@@ -0,0 +1,11 @@
+int
+foo (char *a, char *b)
+{
+ int x;
+ *a = *b;
+ x = *b;
+ if ((char) x)
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mcmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mcmp.c
new file mode 100644
index 000000000..6008008e1
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mcmp.c
@@ -0,0 +1,9 @@
+foo (ip, a, x)
+ int a;
+ int *ip;
+ int x;
+{
+ if (a >= 1)
+ x++;
+ return x;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mdouble.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mdouble.c
new file mode 100644
index 000000000..992db2205
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mdouble.c
@@ -0,0 +1,6 @@
+double
+foo (double a)
+{
+
+ return 1.123486712;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/memtst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/memtst.c
new file mode 100644
index 000000000..b5ef26070
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/memtst.c
@@ -0,0 +1,26 @@
+#ifdef STACK_SIZE
+#define SIZE STACK_SIZE / 8
+#else
+#define SIZE 65536
+#endif
+
+memtst (int *p, int a)
+{
+ do
+ {
+ if (p[a] == 1)
+ break;
+ }
+ while (--a);
+}
+
+main ()
+{
+ int a[SIZE];
+ int i;
+ bzero (a, SIZE * 4);
+ for (i = 0; i < 100; i++)
+ {
+ memtst (a, SIZE);
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/miscomp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/miscomp.c
new file mode 100644
index 000000000..0bcb568d5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/miscomp.c
@@ -0,0 +1,15 @@
+unsigned char foo(unsigned long);
+main()
+{
+ unsigned char AChar;
+ unsigned long ALong = 0x12345678;
+
+ AChar = foo(ALong);
+
+ printf("AChar = %x\n",(int)AChar);
+}
+unsigned char
+foo( unsigned long TheLong)
+{
+ return( (unsigned char) (TheLong & 0xff) );
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mm.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mm.c
new file mode 100644
index 000000000..a8efaae21
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mm.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a * 2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mod.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mod.c
new file mode 100644
index 000000000..c33211dc7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mod.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a % b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/modcc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/modcc.c
new file mode 100644
index 000000000..2574090e9
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/modcc.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return (a % b) == 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move.c
new file mode 100644
index 000000000..78e00ff21
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move.c
@@ -0,0 +1,9 @@
+typedef char type;
+
+type
+foo (b)
+{
+ type a;
+ for (a = 10; a < b; a++)
+ ;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move_qhi.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move_qhi.c
new file mode 100644
index 000000000..9bc9cb663
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/move_qhi.c
@@ -0,0 +1,12 @@
+move (a, b)
+ char a, b;
+{
+ char s;
+ s = a;
+ if (s)
+ gurka (s);
+ foo (b, a);
+ a = bar ();
+ b = bar ();
+ gra (s);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mregtst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mregtst.c
new file mode 100644
index 000000000..b6bb6c21f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mregtst.c
@@ -0,0 +1,17 @@
+foo (a, p)
+ int *p;
+{
+ int old, new, i;
+
+ old = 0;
+ for (i = 1; i < 100; i++)
+ {
+ new = p[i];
+ if (new < old)
+ a++;
+ old = new;
+ if (old == 0)
+ return 0;
+ }
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/msp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/msp.c
new file mode 100644
index 000000000..5d350fd5e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/msp.c
@@ -0,0 +1,10 @@
+#ifdef STACK_SIZE
+# define A_SIZE (STACK_SIZE/sizeof(int))
+#else
+# define A_SIZE 16384
+#endif
+foo ()
+{
+ int a[A_SIZE];
+ bar (a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mtst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mtst.c
new file mode 100644
index 000000000..4f43137b7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mtst.c
@@ -0,0 +1,17 @@
+foo (int *p, int c)
+{
+ int a, b;
+ a = p[0];
+ b = p[1];
+ c = p[2];
+ if (b == 0)
+ goto foo1;
+ if (b < 0)
+ goto foo2;;
+
+ return a + b + c;
+ foo1:
+ return 1;
+ foo2:
+ return 2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mu.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mu.c
new file mode 100644
index 000000000..c469a6e3a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mu.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a * b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mul.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mul.c
new file mode 100644
index 000000000..cc5d06b5f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mul.c
@@ -0,0 +1,5 @@
+void
+mulqi (char *p, char a, char b)
+{
+ p[0] = a/b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword.c
new file mode 100644
index 000000000..873e08868
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword.c
@@ -0,0 +1,29 @@
+int
+foo (a, b)
+int *a, *b;
+{
+ int x, y;
+ x++;
+ *a = *b;
+ y = *b;
+
+ if ((int) x)
+ return 1;
+ else
+ return y;
+}
+
+foo1 (p)
+ int *p;
+{
+ p[0] = p[1];
+ return p[0];
+}
+
+foo2 (p, x)
+ int *p;
+{
+ p[0] = x;
+ return p[0];
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword1.c
new file mode 100644
index 000000000..690703eb8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/mword1.c
@@ -0,0 +1,12 @@
+int
+foo (a, b)
+int *a, *b;
+{
+ int x;
+ *a = (*b + 1);
+ x = *b;
+ if ((int) x)
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n.c
new file mode 100644
index 000000000..1a9a86974
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n.c
@@ -0,0 +1,6 @@
+char_autoincr (b1, c)
+ short *b1;
+ short c;
+{
+ *b1 = c;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n1.c
new file mode 100644
index 000000000..dfa93cebe
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/n1.c
@@ -0,0 +1,10 @@
+foo (a, p)
+ long long a;
+ int *p;
+{
+ int b = (int)-a;
+ if (b > 32)
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/nand.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/nand.c
new file mode 100644
index 000000000..8228a3c3a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/nand.c
@@ -0,0 +1,4 @@
+nadn (a, b)
+{
+ return (~a) | (~b);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/neg.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/neg.c
new file mode 100644
index 000000000..c005b1327
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/neg.c
@@ -0,0 +1 @@
+foo (a) {return -a;}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/o.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/o.c
new file mode 100644
index 000000000..e8b78e383
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/o.c
@@ -0,0 +1,12 @@
+foo (a, p)
+ char a;
+ int *p;
+{
+ int b = a;
+ *p = b;
+ a = (char) a;
+ if (a)
+ return b;
+ else
+ return b + 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/omit.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/omit.c
new file mode 100644
index 000000000..f59d6ee8f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/omit.c
@@ -0,0 +1,11 @@
+omit (a, b)
+ char a;
+ char *b;
+{
+ char x;
+ int i;
+ x = *b;
+ b[1] = x;
+ foo ((int)x);
+ return x + 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opout.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opout.c
new file mode 100644
index 000000000..6d3736e05
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opout.c
@@ -0,0 +1,10 @@
+x ()
+{}
+
+y ()
+{}
+
+z (a, b)
+{
+ return (int) &a + (int) &b + (int) x + (int) z;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opt.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opt.c
new file mode 100644
index 000000000..faad10e48
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/opt.c
@@ -0,0 +1,5 @@
+int
+foo (a)
+{
+ return (a == 2);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or.c
new file mode 100644
index 000000000..2a2e3b668
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a | 0xffff0101;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or386.c
new file mode 100644
index 000000000..ad49f3504
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/or386.c
@@ -0,0 +1,13 @@
+typedef int xtype;
+
+xtype
+foo (a)
+ xtype a;
+{
+ return a | 0x7f;
+}
+
+main ()
+{
+ printf ("%08x\n", foo (-1));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/p.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/p.c
new file mode 100644
index 000000000..465e74159
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/p.c
@@ -0,0 +1,6 @@
+foo (a, b, p)
+ short *p;
+{
+ p[0] = a;
+ p[1] = b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/parms.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/parms.c
new file mode 100644
index 000000000..26c2c7017
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/parms.c
@@ -0,0 +1,7 @@
+#define alloca __builtin_alloca
+
+x (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, x, y)
+{
+ foo (alloca (8));
+ return a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+x+y;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pass.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pass.c
new file mode 100644
index 000000000..6b663828a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pass.c
@@ -0,0 +1,13 @@
+int
+foo (a, b, c)
+{
+ return a + b + c;
+}
+
+int
+bar ()
+{
+ int q, w, e, r, t, y;
+
+ return foo ((int) & q, q, w, e, q, (int) &w);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pmt.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pmt.c
new file mode 100644
index 000000000..b6aced6ec
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pmt.c
@@ -0,0 +1,6 @@
+long long
+foo (a, b)
+ long long a, b;
+{
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/poor.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/poor.c
new file mode 100644
index 000000000..66d584aff
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/poor.c
@@ -0,0 +1,34 @@
+typedef struct
+{
+ char c[510];
+} s510;
+
+typedef struct
+{
+ char c[511];
+} s511;
+
+s510 G510, s1;
+s511 G511;
+int I, J;
+double D;
+
+void main(void);
+void f0(double D, ...);
+s510 f1(double D, ...);
+void f2a(s510 S);
+void f2b(s511 S);
+
+
+void main(void)
+{
+
+ f0(D, I, J);
+
+ s1 = f1(D, I, D);
+
+ f2a(G510);
+
+ f2b(G511);
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pp.c
new file mode 100644
index 000000000..7d38d53de
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pp.c
@@ -0,0 +1,9 @@
+foo (a, b, c, d, e, i0, f, i1)
+ double a, b, c, d, e, f;
+ int i0, i1;
+{}
+
+main ()
+{
+ foo (1.0, 2.0, 3.0, 4.0, 5.0, 1, 6.0, 2);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pret-arg.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pret-arg.c
new file mode 100644
index 000000000..a7fa85628
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pret-arg.c
@@ -0,0 +1,5 @@
+foo (a, b, c, d, e, f, g, h, i, j, xx)
+ double xx;
+{
+ return xx + 1.2345;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr.c
new file mode 100644
index 000000000..d25b2a99a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr.c
@@ -0,0 +1,11 @@
+foo (char *a)
+{
+ char b;
+ int c;
+ b = *a;
+ c = b;
+ if (c < 0)
+ return 1;
+ a[1] = b;
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr2.c
new file mode 100644
index 000000000..12e2ccd24
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/pyr2.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return ((int *)0)[a];
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/q.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/q.c
new file mode 100644
index 000000000..fa08e758a
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/q.c
@@ -0,0 +1,7 @@
+
+unsigned
+reg0indreg1 (r0, p1)
+ unsigned short r0; unsigned short p1;
+{
+ return (r0 + p1);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r.c
new file mode 100644
index 000000000..19eeda7ab
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r.c
@@ -0,0 +1,7 @@
+r (a, b)
+{
+ if (a < b)
+ return 1;
+ else
+ return 2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r1.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r1.c
new file mode 100644
index 000000000..0b277b0f8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/r1.c
@@ -0,0 +1,29 @@
+void assert (a) {if (a != 1) abort ();}
+
+int h1 (int *p) {return *p & 255;}
+
+void p1 () {int a = 0x01020304; assert (h1 (&a) == 0x04);}
+
+
+int h2 (a) {return a > 0;}
+
+p2 () {assert (h2 (1));}
+
+h3 (int *p)
+{
+ *p |= 255;
+}
+
+p3 ()
+{
+ int *p;
+ h3 (p);
+}
+
+main ()
+{
+ p1 ();
+ p2 ();
+ p3 ();
+ puts ("Compiler test passed.");
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rel.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rel.c
new file mode 100644
index 000000000..54d36052e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rel.c
@@ -0,0 +1,8 @@
+foo (int *c, int b)
+{
+ int a;
+
+ a = *c + b;
+ c[1] = a;
+ return b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rmsc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rmsc.c
new file mode 100644
index 000000000..5c97c6dae
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/rmsc.c
@@ -0,0 +1,46 @@
+
+cc1 (x, y)
+ int x, y;
+{
+ int z;
+ z = x - y;
+ if (x >= y)
+ return z + 1;
+ else
+ return z + 0;
+}
+
+cc2 (x, y)
+ int x, y;
+{
+ int z;
+
+ z = x - y;
+ if (z >= 0)
+ return z + 1;
+ else
+ return z + 0;
+}
+
+cc3 (x, y)
+ unsigned x, y;
+{
+ unsigned z;
+ z = x - y;
+ if (x >= y)
+ return z + 1;
+ else
+ return z + 0;
+}
+
+cc4 (x, y)
+ unsigned x, y;
+{
+ unsigned z;
+
+ z = x - y;
+ if (z >= 0)
+ return z + 1;
+ else
+ return z + 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/round.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/round.c
new file mode 100644
index 000000000..5233e65ea
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/round.c
@@ -0,0 +1,13 @@
+foo (a)
+ double a;
+{
+ printf ("%d\n", (int) a);
+}
+
+main ()
+{
+ foo (1.6);
+ foo (1.4);
+ foo (-1.4);
+ foo (-1.6);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/run.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/run.c
new file mode 100644
index 000000000..40892f603
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/run.c
@@ -0,0 +1,11 @@
+main ()
+{
+ typedef short int xtype;
+
+ xtype i;
+ xtype ii;
+
+ for (i = 0; i < 100; i++)
+ for (ii = 65535; --ii;)
+ ;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/s.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/s.c
new file mode 100644
index 000000000..e0c842622
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/s.c
@@ -0,0 +1,24 @@
+struct foo
+{
+ int a, b, c, d;
+ double doubl;
+} s1, s2;
+
+struct foo
+structret (s1, i1, i2, s2)
+ struct foo s1, s2;
+ int i1, i2;
+{
+ if (i1 != i2)
+ {
+ if (i1 < i2)
+ return s1;
+ else
+ return s2;
+ }
+ s2.a = 11;
+ s2.b = 22;
+ s2.c = s1.c;
+ s2.d = s1.d;
+ return s2;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sar.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sar.c
new file mode 100644
index 000000000..9bf9bec06
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sar.c
@@ -0,0 +1,10 @@
+struct foo
+{
+ char a;
+} foo[100];
+
+main ()
+{
+ foo[1].a = '1';
+ foo[2].a = '2';
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sc.c
new file mode 100644
index 000000000..84dc60f7e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sc.c
@@ -0,0 +1,5 @@
+foo (a, b)
+ int a, b;
+{
+ return (a < 0) | (a <= 0) | (a == 0) | (a != 0) | (a >= 0) | (a > 0);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scal.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scal.c
new file mode 100644
index 000000000..94e22aa80
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scal.c
@@ -0,0 +1,19 @@
+int g1, g2;
+
+void
+write_at (addr, off, val)
+ int *addr;
+ int off;
+ int val;
+{
+ g2 = 1;
+ addr[off] = val;
+ g2++;
+}
+
+main ()
+{
+ g2 = 12;
+ write_at (&g1, &g2 - &g1, 12345);
+ printf ("%d\n", g2);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scc.c
new file mode 100644
index 000000000..79ae4e12f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scc.c
@@ -0,0 +1,11 @@
+foo (a, b)
+{
+ if (a < 0)
+ goto ret1;
+ if (a == 0)
+ return 2;
+ return 3;
+ ret1:
+ return 1;
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scond.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scond.c
new file mode 100644
index 000000000..087b0a66e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/scond.c
@@ -0,0 +1,4 @@
+scond (a, b, c, d)
+{
+ return (a > b) & (c < d);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/selfrec.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/selfrec.c
new file mode 100644
index 000000000..c7aaca552
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/selfrec.c
@@ -0,0 +1,5 @@
+int
+foo (a)
+{
+ return foo (a - 1) * a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/seq.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/seq.c
new file mode 100644
index 000000000..0793228b4
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/seq.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a < 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set386.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set386.c
new file mode 100644
index 000000000..c16ae8dbd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set386.c
@@ -0,0 +1,5 @@
+foo (a, p)
+ int *p;
+{
+ *p = a > 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set88.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set88.c
new file mode 100644
index 000000000..8069ea622
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/set88.c
@@ -0,0 +1,9 @@
+foo (a)
+{
+ return -1 << a;
+}
+
+bar (a, b)
+{
+ return b | (-1 << a);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sh.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sh.c
new file mode 100644
index 000000000..8d3265f83
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sh.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a << b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shand.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shand.c
new file mode 100644
index 000000000..5a4019613
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shand.c
@@ -0,0 +1,11 @@
+int
+foo (x, c)
+ int x;
+{
+ return x >> 24 & 0xff;
+}
+
+bar (x)
+{
+ return (int)(x & 0xfffff) << 13;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shft.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shft.c
new file mode 100644
index 000000000..7d318c863
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shft.c
@@ -0,0 +1,15 @@
+foo (a)
+ int a;
+{
+ int b = 8;
+
+ if ((a << b) >= 0)
+ return 1;
+ return a;
+}
+
+main ()
+{
+ if (foo (0x00ffffff) == 1)
+ puts ("y");
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shift.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shift.c
new file mode 100644
index 000000000..1ed1879c6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shift.c
@@ -0,0 +1,7 @@
+foo (a)
+{
+ if (a >= 0)
+ return (unsigned) a << 10;
+ else
+ return (int) a << 10;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shloop.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shloop.c
new file mode 100644
index 000000000..f4c936639
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shloop.c
@@ -0,0 +1,7 @@
+main ()
+{
+ int volatile p;
+ int i;
+ for (i = 10000000; i > 0; i--)
+ p = i >> 10;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shm.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shm.c
new file mode 100644
index 000000000..b667b26ab
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/shm.c
@@ -0,0 +1,5 @@
+foo (int *p)
+{
+ int a = *p;
+ return a >> 24;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext.c
new file mode 100644
index 000000000..2724098d0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext.c
@@ -0,0 +1,27 @@
+void longprint (x)
+ long long x;
+{
+ printf (" %d, %d\n", (unsigned) ((unsigned long long) x >> 32),
+ (unsigned) x);
+}
+
+void
+k_min (p, qa, d)
+ int d;
+{
+ int s = 1;
+ long long x;
+
+ if (s >= d)
+ s -= d;
+
+ x = ((long long)((8 * s) % 3) + qa) % d;
+ longprint (x);
+}
+
+int
+main ()
+{
+ k_min (100003, -600017, 3);
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext2.c
new file mode 100644
index 000000000..d2eb6370d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/signext2.c
@@ -0,0 +1,11 @@
+long long
+foo (a)
+ int a;
+{
+ return a;
+}
+
+main ()
+{
+ printf ("%d\n", (int) (foo (-1) >> 32));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sim.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sim.c
new file mode 100644
index 000000000..e8c4fb42f
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sim.c
@@ -0,0 +1,7 @@
+main ()
+{
+ int i;
+
+ for (i = 1; i < 10000; i++)
+ ;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/simple.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/simple.c
new file mode 100644
index 000000000..614acba82
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/simple.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sne.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sne.c
new file mode 100644
index 000000000..6844a6e53
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sne.c
@@ -0,0 +1,4 @@
+foo (double a)
+{
+ return (a != 0);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sound.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sound.c
new file mode 100644
index 000000000..be727e3fe
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sound.c
@@ -0,0 +1,13 @@
+
+main ()
+{
+ char audio[8192];
+ int i;
+
+ for (i = 0; i < 4095; i += 1)
+ audio[i] = i / 8,
+ audio[8191 - i] = i / 8;
+
+ for (;;)
+ write (1, audio, 8192);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sparcbug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sparcbug.c
new file mode 100644
index 000000000..cd42a86cc
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sparcbug.c
@@ -0,0 +1,5 @@
+foo (a)
+{
+ int b = a;
+ return b + 8762345;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/speed.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/speed.c
new file mode 100644
index 000000000..d61407e32
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/speed.c
@@ -0,0 +1,8 @@
+main ()
+{
+ int i;
+
+ for (i = 5000000; i >=0; i--)
+ {
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stor.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stor.c
new file mode 100644
index 000000000..57981eff5
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stor.c
@@ -0,0 +1,12 @@
+#define C 1
+
+foo (p)
+ int *p;
+{
+ p[0] = C;
+ p[1] = C;
+ p[2] = C;
+ p[3] = C;
+ p[4] = C;
+ p[5] = C;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/store0.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/store0.c
new file mode 100644
index 000000000..3b7b16ef3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/store0.c
@@ -0,0 +1,4 @@
+foo (int *p)
+{
+ p[10] = 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/storecc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/storecc.c
new file mode 100644
index 000000000..116346910
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/storecc.c
@@ -0,0 +1,6 @@
+foo (char *p, int a)
+{
+ *p = a;
+ if ((char) a)
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/str.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/str.c
new file mode 100644
index 000000000..d2dec4b23
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/str.c
@@ -0,0 +1,13 @@
+typedef struct
+{
+ char a;
+ char b;
+} foo;
+
+bar ()
+{
+ foo foobar[100];
+ foobar[1].a = 'a';
+ foobar[2].a = 'b';
+ barfoo (foobar);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stru.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stru.c
new file mode 100644
index 000000000..042c52217
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stru.c
@@ -0,0 +1,9 @@
+struct foo
+{
+ int a, b, c;
+};
+
+foo (struct foo *a)
+{
+ a[0] = a[1];
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/structret.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/structret.c
new file mode 100644
index 000000000..9c705d4c0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/structret.c
@@ -0,0 +1,69 @@
+struct foo
+{
+ int a, b, c, d;
+ double doubl;
+} s1, s2;
+
+#ifndef ONLY2
+
+struct foo
+structret (s1, i1, i2, s2)
+ struct foo s1, s2;
+ int i1, i2;
+{
+ if (i1 != i2)
+ {
+ if (i1 < i2)
+ return s1;
+ else
+ return s2;
+ }
+ s2.a = 11;
+ s2.b = 22;
+ s2.c = s1.c;
+ s2.d = s1.d;
+ return s2;
+}
+
+#endif
+
+#ifndef ONLY1
+
+struct foo
+mani (a, b)
+{
+ return structret (s1, a, b, s2);
+}
+
+init ()
+{
+ s1.a = 1;
+ s1.b = 2;
+ s1.c = 3;
+ s1.d = 4;
+ s1.doubl = 3.1415;
+ s2.a = -1;
+ s2.b = -2;
+ s2.c = -3;
+ s2.d = -4;
+ s2.doubl = 2.71818;
+}
+
+main ()
+{
+ struct foo s;
+
+ init ();
+ s = mani (1, 1);
+ printf ("%d, %d, %d, %d : %f\n", s.a, s.b, s.c, s.d, s.doubl);
+
+ init ();
+ s = mani (2, 1);
+ printf ("%d, %d, %d, %d : %f\n", s.a, s.b, s.c, s.d, s.doubl);
+
+ init ();
+ s = mani (1, 2);
+ printf ("%d, %d, %d, %d : %f\n", s.a, s.b, s.c, s.d, s.doubl);
+}
+
+#endif
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stuct.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stuct.c
new file mode 100644
index 000000000..deb838d80
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/stuct.c
@@ -0,0 +1,22 @@
+#ifdef STACK_SIZE
+#define SIZE STACK_SIZE / 8
+#else
+#define SIZE 10000000
+#endif
+
+struct foo
+{
+ int a, b, c;
+ int arr[SIZE];
+};
+
+struct foo s, ss;
+
+main ()
+{
+
+ s.b = 2;
+ s.c = 3;
+ ss.b = 2;
+ ss.c = 3;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sub32.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sub32.c
new file mode 100644
index 000000000..93114d96c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sub32.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a + 32;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcc.c
new file mode 100644
index 000000000..d89b50dbd
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcc.c
@@ -0,0 +1,33 @@
+int foo (a, c)
+{
+ int b;
+
+ if (a + c >= 0) /* b < 0 ==== a < 10? */
+ return a | 0x80000000;
+ return 0;
+}
+
+void bar (a)
+ int a;
+{
+ if (foo (a, 10) & 0x80000000)
+ printf ("y");
+ else
+ printf ("n");
+}
+
+int main ()
+{
+ bar (0);
+ bar (1);
+ bar (-1);
+ bar (10);
+ bar (-10);
+ bar (11);
+ bar (-11);
+ bar (0x7fffffff);
+ bar (-0x7fffffff);
+
+ puts ("");
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcse.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcse.c
new file mode 100644
index 000000000..0a10991f1
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/subcse.c
@@ -0,0 +1,6 @@
+foo (a, b, p)
+ int *p;
+{
+ p[0] = 1230 - a;
+ p[1] = 1230 - b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sym.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sym.c
new file mode 100644
index 000000000..8a0fe323b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/sym.c
@@ -0,0 +1,4 @@
+foo ()
+{
+ return (int) &foo;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/symconst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/symconst.c
new file mode 100644
index 000000000..7add21810
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/symconst.c
@@ -0,0 +1,4 @@
+foo ()
+{
+ return (int)foo;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/t.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/t.c
new file mode 100644
index 000000000..48095e7c3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/t.c
@@ -0,0 +1,18 @@
+#define B 95
+
+foo (a, b, p)
+ unsigned a, b;
+ int *p;
+{
+ p[1] = a % B;
+ p[0] = a / B;
+}
+
+bar (a, b, p)
+ unsigned a, b;
+ int *p;
+{
+ p[0] = a / B;
+ p[1] = a % B;
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-flow.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-flow.c
new file mode 100644
index 000000000..01ec724eb
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-flow.c
@@ -0,0 +1,12 @@
+foo (a, b, c, d)
+{
+ if (a < 0)
+ {
+ b = c;
+ }
+ else
+ {
+ b = d;
+ }
+ return b + 75;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-loop.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-loop.c
new file mode 100644
index 000000000..d441dde0c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test-loop.c
@@ -0,0 +1,7 @@
+main ()
+{
+ int i;
+ for (i = 100; i >= -1; i--)
+ foo ();
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test.c
new file mode 100644
index 000000000..46e830a35
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/test.c
@@ -0,0 +1,6 @@
+foo (a)
+{
+ if (a & 38)
+ return 1;
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/time.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/time.c
new file mode 100644
index 000000000..7e22681d9
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/time.c
@@ -0,0 +1,7 @@
+main ()
+{
+ int i;
+ for (i = 3000000; --i;)
+ {
+ }
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/tmp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/tmp.c
new file mode 100644
index 000000000..463d9fb53
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/tmp.c
@@ -0,0 +1,5 @@
+foo (a, b)
+{
+ return (a - b) == 0;
+}
+
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trivial.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trivial.c
new file mode 100644
index 000000000..e9665cd8d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trivial.c
@@ -0,0 +1 @@
+foo () {}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trunc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trunc.c
new file mode 100644
index 000000000..dee0e1587
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/trunc.c
@@ -0,0 +1,11 @@
+main ()
+{
+ printf ("%x, %x\n", (unsigned char) main, main);
+}
+
+foo (p)
+ char *p;
+{
+ p[0] = (char)foo;
+ p[1] = (char)foo;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/u.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/u.c
new file mode 100644
index 000000000..7fc0dda37
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/u.c
@@ -0,0 +1 @@
+foo (a, b) { return a % b; }
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udconvert.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udconvert.c
new file mode 100644
index 000000000..31b494fe0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udconvert.c
@@ -0,0 +1,30 @@
+double
+unsigned_to_double1 (u)
+ unsigned u;
+{
+ double d;
+ d = (int) u; /* convert as from a *signed* integer */
+ return ((int) u < 0)
+ ? d + 4294967296.0
+ : d;
+}
+
+/* Alternatively */
+
+double
+unsigned_to_double2 (u)
+ unsigned u;
+{
+ double d;
+ u -= 2147483648; /* complement sign bit */
+ d = (int) u; /* convert as from a *signed* integer */
+ return d + 2147483648.0;
+}
+
+unsigned
+double_to_unsigned (d)
+ double d;
+{
+ d += 2147483648.0;
+ return ((int) d) - 2147483648;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udivmod4.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udivmod4.c
new file mode 100644
index 000000000..40d2fa8d0
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/udivmod4.c
@@ -0,0 +1,56 @@
+long long
+xlrandom ()
+{
+ long long x;
+ unsigned a;
+ int bits = 64;
+ unsigned b;
+
+ do
+ {
+ a = random ();
+ b = (a & 15) + 1;
+ x <<= b; /* shift up 1-16 steps */
+ a = (a >> 18) & 1;
+ if (a)
+ x |= (unsigned) (1 << b) - 1;
+ bits -= b;
+ }
+ while (bits >= 0);
+ return x;
+}
+
+
+unsigned long long __udivmoddi4();
+
+main ()
+{
+ int i;
+ unsigned long long n, d, q, r, rr;
+
+ for (i = 0; ;i++)
+ {
+ n = xlrandom ();
+ d = xlrandom ();
+ if (d == 0)
+ continue;
+
+ q = __udivmoddi4 (n, d, &r);
+
+ if (i % 1000000 == 0)
+ printf ("Testing udivmoddi4: %d iterations made\n", i);
+
+ rr = n - q * d;
+ if (rr != r || r >= d)
+ {
+ printf ("Testing udivmoddi4: failure after %d iterations\n", i);
+ printf ("n=%lX%08lX\n", (unsigned) (n >> 32), (unsigned) n);
+ printf ("d=%lX%08lX\n", (unsigned) (d >> 32), (unsigned) d);
+ printf ("q=%lX%08lX\n", (unsigned) (q >> 32), (unsigned) q);
+ printf ("r=%lX%08lX\n", (unsigned) (r >> 32), (unsigned) r);
+ printf ("rr=%lX%08lX\n", (unsigned) (rr >> 32), (unsigned) rr);
+ abort ();
+ }
+ }
+
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns.c
new file mode 100644
index 000000000..314704f89
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns.c
@@ -0,0 +1,5 @@
+foo (a)
+{
+ if ((unsigned) a < 234)
+ return 1;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns_tst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns_tst.c
new file mode 100644
index 000000000..e34ffaf30
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uns_tst.c
@@ -0,0 +1,19 @@
+a (c)
+ unsigned char c;
+{
+ unsigned u = c;
+ if ((int)u < 0)
+ return 1;
+ else
+ return 0;
+}
+
+b (x, y)
+ unsigned x, y;
+{
+ x /= y;
+ if ((int)x < 0)
+ return 1;
+ else
+ return 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/unsorted.exp b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/unsorted.exp
new file mode 100644
index 000000000..f9b7e8d8d
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/unsorted.exp
@@ -0,0 +1,60 @@
+#
+# Expect driver script for GCC Regression Tests
+# Copyright (C) 1993-2014 Free Software Foundation, Inc.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GCC; see the file COPYING3. If not see
+# <http://www.gnu.org/licenses/>.
+#
+# Written by Jeffrey Wheat (cassidy@cygnus.com)
+#
+
+#
+# These tests come from Torbjorn Granlund's (tege@cygnus.com)
+# C torture test suite, and other contributors.
+#
+
+if $tracelevel then {
+ strace $tracelevel
+}
+
+# load support procs
+load_lib c-torture.exp
+load_lib torture-options.exp
+
+torture-init
+set-torture-options $C_TORTURE_OPTIONS {{}} $LTO_TORTURE_OPTIONS
+
+#
+# This loop will run c-torture on any *.c file found in this directory.
+# If a *.c has a corresponding *.exp file, then the test is skipped as
+# as the *.exp will drive the test itself. It is done this way so that
+# generic tests do not need a separate .exp for it. Only the tests that
+# require unique options need their own .exp file.
+#
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.c]] {
+ if [file exists [file rootname $testcase].exp] then {
+ verbose "INFO:\"[file rootname $testcase].exp\" exists, skipping test" 3
+ continue
+ }
+
+ # If we're only testing specific files and this isn't one of them, skip it.
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+
+ c-torture $testcase
+}
+
+torture-finish
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uuarg.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uuarg.c
new file mode 100644
index 000000000..8928b3e07
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/uuarg.c
@@ -0,0 +1,4 @@
+foo (a, b, c, d, e, f, g, h, i)
+{
+ return foo () + i;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/v.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/v.c
new file mode 100644
index 000000000..87ac00aef
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/v.c
@@ -0,0 +1,11 @@
+main (int *p)
+{
+ int a;
+
+ a = 0;
+ p[1] = a;
+ a = 0;
+ p[2] = a;
+ a = 123456;
+ p[3] = a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/w.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/w.c
new file mode 100644
index 000000000..1acfe1512
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/w.c
@@ -0,0 +1 @@
+int foo (unsigned short a, unsigned short b) { return a + b; }
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ww.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ww.c
new file mode 100644
index 000000000..657f8c6b8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/ww.c
@@ -0,0 +1,7 @@
+foo (p)
+ short *p;
+{
+ static int *foo;
+ *p = 1234;
+ *foo = 1234;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/x.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/x.c
new file mode 100644
index 000000000..baf98960c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/x.c
@@ -0,0 +1 @@
+f(m){int i,s=0;for(i=0;i<m;i++)s+=i;return s;}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xb.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xb.c
new file mode 100644
index 000000000..09087ccf3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xb.c
@@ -0,0 +1,17 @@
+foo (a, b)
+{
+ unsigned x = 1;
+
+ a += b;
+ a += x;
+ if (a <= 0)
+ return 1;
+ return 0;
+}
+
+main ()
+{
+ printf ("%d\n", foo (1, ~0));
+ printf ("%d\n", foo (0, ~0));
+ printf ("%d\n", foo (-1, ~0));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xbg.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xbg.c
new file mode 100644
index 000000000..b600964d4
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xbg.c
@@ -0,0 +1,14 @@
+typedef short type;
+
+short
+foo (type *sp, int a)
+{
+ type t;
+ int i;
+
+ t = sp[a];
+ i = (int)(type)sp[a];
+ if (i)
+ return 0;
+ return t;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xc.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xc.c
new file mode 100644
index 000000000..aed06a04e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xc.c
@@ -0,0 +1,11 @@
+foo (a, p)
+ int *p;
+{
+ int b;
+
+ a++;
+ b = *p;
+ if (a)
+ return 1;
+ return b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xcsebug.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xcsebug.c
new file mode 100644
index 000000000..614a6e80e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xcsebug.c
@@ -0,0 +1,14 @@
+int g1;
+int g2;
+
+foo ()
+{
+ int i = 1;
+ int x;
+
+ x = g1;
+ (*(&g1 + i - 1)) = x + 1;
+ x = g1;
+ (*(&g1 + i - 1)) = x + 1;
+ g1++;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xdi.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xdi.c
new file mode 100644
index 000000000..413dd6cf8
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xdi.c
@@ -0,0 +1,15 @@
+foo (long long *p, int a, int b)
+{
+ *(p + a + b) = 876243243874343LL;
+}
+
+bar (p, pp)
+ long long *p, *pp;
+{
+ long long a;
+ *p++ = a;
+ fee (*p);
+ *p++ = *pp--;
+ *p++ = *pp--;
+ return (int) p;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xfoo.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xfoo.c
new file mode 100644
index 000000000..da879d2aa
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xfoo.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return (a & ~0xfff) == 0;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xi.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xi.c
new file mode 100644
index 000000000..54b42c5a3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xi.c
@@ -0,0 +1,7 @@
+foo (a)
+{
+ int r = 0;
+ if (a)
+ r = 1;
+ return r;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xlop.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xlop.c
new file mode 100644
index 000000000..6506bfd34
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xlop.c
@@ -0,0 +1,11 @@
+foo (a)
+{
+ int b;
+ do
+ {
+ b = bar ();
+ a = b - 10;
+ }
+ while (a > 10);
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xmtst.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xmtst.c
new file mode 100644
index 000000000..ca78fcaac
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xmtst.c
@@ -0,0 +1,26 @@
+p1 (int b, int *p, int a)
+{
+ p[0] = p[1];
+ return p[0];
+}
+p2 (int b, int *p, int a)
+{
+ p[0] = p[1];
+ return p[0] == 0;
+}
+p3 (int b, int *p, int a)
+{
+ p[0] = p[1];
+ a = p[0];
+ if (a)
+ return 0;
+ return a;
+}
+p4 (int b, int *p, int a)
+{
+ a = p[1];
+ p[0] = p[1];
+ if (a)
+ return 0;
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xneg.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xneg.c
new file mode 100644
index 000000000..ff5b85034
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xneg.c
@@ -0,0 +1,5 @@
+foo (a)
+ double a;
+{
+ return -a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xopt.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xopt.c
new file mode 100644
index 000000000..b1a50f86c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xopt.c
@@ -0,0 +1,35 @@
+proc1 (a)
+ unsigned a;
+{
+ return (a >> 20) & 0x010fffff;
+}
+
+proc2 (a)
+ unsigned a;
+{
+ return (a << 17) & 0xfffff001;
+}
+
+proc3 (a)
+ unsigned a;
+{
+ return (a & 0xff00000a) >> 25;
+}
+
+proc4 (a)
+ unsigned a;
+{
+ return (a & 0x100000ff) << 25;
+}
+
+proc5 (a)
+ unsigned a;
+{
+ return (unsigned char) (a >> 24);
+}
+
+proc6 (a)
+ unsigned a;
+{
+ return ((unsigned char) a) << 30;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xor.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xor.c
new file mode 100644
index 000000000..435f2231e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xor.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return ~(a ^ ~123);
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xorn.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xorn.c
new file mode 100644
index 000000000..d7b75f936
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xorn.c
@@ -0,0 +1,31 @@
+int
+xorn (a, b)
+ int a, b;
+{
+ return a ^ ~b;
+}
+
+int
+not (a)
+ int a;
+{
+ return ~a;
+}
+
+int
+xor (a, b)
+ int a, b;
+{
+ return a ^ b;
+}
+
+main ()
+{
+ int i, j;
+
+ for (i = 0; i <= 1; i++)
+ for (j = 0; j <= 1; j++)
+ printf ("%d op %d = %d = %d?\n", i, j,
+ 1 & xor (i, not (j)),
+ 1 & xorn (i, j));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xp.c
new file mode 100644
index 000000000..139335c02
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xp.c
@@ -0,0 +1,4 @@
+foo (a)
+{
+ return a & 255;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xpp.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xpp.c
new file mode 100644
index 000000000..daf3399a3
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xpp.c
@@ -0,0 +1,12 @@
+foo (a)
+{
+ a++;
+ if (a < 10)
+ return 1;
+ return a;
+}
+
+main ()
+{
+ printf ("%d\n", foo ((1 << 31) - 1));
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xs.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xs.c
new file mode 100644
index 000000000..24f773e75
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xs.c
@@ -0,0 +1,9 @@
+foo (a, b)
+{
+ for (b = 0; b < 10; b++)
+ ;
+ for (a = 0; a < 10; a++)
+ ;
+ a = b << 1;
+ return a;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xsh.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xsh.c
new file mode 100644
index 000000000..9ba0b6c9e
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xsh.c
@@ -0,0 +1,7 @@
+foo (a, b)
+{
+ a = b + b;
+ if (a)
+ return a;
+ return b;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xz.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xz.c
new file mode 100644
index 000000000..97a1d1e2c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xz.c
@@ -0,0 +1,4 @@
+foo (int *p)
+{
+ *p = (unsigned short) *p;
+}
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xzz.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xzz.c
new file mode 100644
index 000000000..f1972b6c6
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/unsorted/xzz.c
@@ -0,0 +1,4 @@
+foo (a, b)
+{
+ return a >> (char) b;
+}