/* * ========== Copyright Header Begin ========================================== * * OpenSPARC T2 Processor File: ifu_basic_mov.s * Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved * 4150 Network Circle, Santa Clara, California 95054, U.S.A. * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This program 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; version 2 of the License. * * 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 this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * For the avoidance of doubt, and except that if any non-GPL license * choice is available it will apply instead, Sun elects to use only * the General Public License version 2 (GPLv2) at this time for any * software where a choice of GPL license versions is made * available with the language indicating that GPLv2 or any later version * may be used, or where a choice of which version of the GPL is applied is * otherwise unspecified. * * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, * CA 95054 USA or visit www.sun.com if you need additional information or * have any questions. * * * ========== Copyright Header End ============================================ */ .ident "FOCUSCASE: focus.pm,v 1.1 2003/04/23 17:53:39 somePerson Exp somePerson $ ./ifu_basic_alu.pl FOCUS_SEED=678265759" .ident "BY somePerson ON Fri Apr 25 12:13:37 CDT 2003" #include "defines.h" #include "old_boot.s" /************************************************************************ Test case code start ************************************************************************/ .text .global main main: /* test begin */ !# Initialize registers .. !# Global registers set 0xF, %g1 set 0xC, %g2 set 0x0, %g3 set 0xB, %g4 set 0xE, %g5 set 0x3, %g6 set 0xF, %g7 !# Input registers set -0x6, %i0 set -0x9, %i1 set -0x7, %i2 set -0xA, %i3 set -0xA, %i4 set -0x2, %i5 set -0x5, %i6 set -0x3, %i7 !# Local registers set 0x14DE3628, %l0 set 0x138EA96B, %l1 set 0x1A1B2DF3, %l2 set 0x28605C17, %l3 set 0x22AE2669, %l4 set 0x3FD9AD43, %l5 set 0x4765C34F, %l6 set 0x185CAE13, %l7 !# Execute some ALU ops .. alignaddrl %l2, %i3, %i7 srax %o7, %i5, %o5 alignaddr %i4, %g4, %g7 addcc %i2, 0x089, %g1 addcc %g4, 0x38C, %o2 addcc %g2, 0x1D4, %i2 movvs %xcc, 0x1F7, %g1 subc %l1, 0xB, %l3 or %l0, %g3, %i6 andncc %l6, 0x21B, %o0 andcc %l4, 0x079, %i0 movcs %xcc, 0x370, %o3 movrgz %l7, 0x24E, %o6 movrgz %o4, 0x3F5, %i1 move %xcc, 0x1D9, %o3 movg %xcc, 0x13E, %o2 movle %icc, 0x241, %g2 movcs %icc, %l1, %l3 andn %l0, %g3, %i6 xnorcc %l6, %o6, %o0 xor %l4, 0x1E3, %i0 movgu %xcc, %l7, %o4 srl %g6, 0x9, %o1 movg %xcc, %i1, %g5 subc %i3, 0x4, %l2 srl %i7, 0x4, %o7 addccc %l5, %o5, %i5 srlx %g7, 0xD, %i4 addcc %g4, 0x38C, %o2 addcc %g2, 0x1D4, %i2 movvs %xcc, 0x1F7, %g1 subc %l1, 0xB, %l3 or %l0, %g3, %i6 andncc %l6, 0x21B, %o0 andcc %l4, 0x079, %i0 movcs %xcc, 0x370, %o3 movrgz %l7, 0x24E, %o6 movrgz %o4, 0x3F5, %i1 orcc %g6, 0x0E7, %i3 alignaddr %l2, %o1, %g5 movge %icc, 0x3AE, %l5 xor %i7, 0x359, %o5 srax %o7, 0x6, %g7 orn %i5, 0x194, %i4 sll %o2, %g2, %g1 mova %xcc, %g4, %l1 subc %l3, 0x3, %i2 sllx %l0, 0xE, %i6 subcc %o0, 0x1, %l6 andncc %i0, 0x185, %l4 movl %icc, 0x269, %o3 andcc %l7, 0x032, %o6 addc %i1, %o4, %i3 andn %g3, 0x3EA, %l2 movle %icc, 0x2DF, %g6 srlx %g5, 0x2, %l5 movge %xcc, 0x152, %i7 subc %o5, 0x3, %o7 movpos %xcc, %i5, %o1 movrgz %i4, 0x126, %g7 movrlz %g2, 0x2D4, %g1 srax %l1, %o2, %g4 or %i2, 0x26B, %l3 movle %icc, %i6, %o0 sub %l6, %l4, %l0 sra %l7, 0x9, %i0 andcc %i1, %o4, %i3 movge %xcc, 0x189, %g3 movn %xcc, 0x166, %l2 andncc %g6, %g5, %o6 movrgz %l5, 0x1A4, %i7 orncc %o5, 0x238, %i5 xorcc %o1, 0x115, %i4 subcc %o7, %g7, %g2 xnor %o3, %l1, %o2 movg %xcc, 0x0FE, %g1 add %l3, %g4, %o0 movrne %i2, 0x39C, %l4 orncc %i6, 0x361, %l6 sra %l7, 0xE, %i1 alignaddrl %l0, %i3, %i0 move %icc, 0x2B2, %g3 sub %g6, 0x1, %g5 xorcc %o4, 0x325, %l5 andcc %i7, 0x2B2, %l2 addc %i5, %o5, %i4 srlx %o1, %o7, %g2 movrlz %g7, 0x079, %l1 or %o3, 0x0BF, %o6 movrz %g1, 0x25A, %l3 subc %o2, 0x2, %o0 move %xcc, %l4, %i2 srlx %i6, 0x6, %l7 movle %xcc, %l6, %i1 addccc %g4, 0x378, %l0 addc %g3, 0x3AA, %i3 movrne %i0, 0x2FC, %g5 andncc %o4, 0x382, %g6 movrgz %l2, 0x2C5, %i5 movgu %xcc, 0x305, %l5 movleu %xcc, %o5, %i4 orncc %i7, %o1, %g2 srax %g7, 0x4, %o3 addc %l1, %o6, %g1 sll %o7, %l3, %o0 and %i2, 0x23D, %o2 alignaddrl %l7, %l4, %i6 xorcc %l6, 0x32C, %g4 or %l0, %g3, %i0 addccc %i3, 0x3AF, %g5 movl %xcc, %g6, %o4 srl %i5, 0xE, %l2 xor %i1, 0x2D1, %o5 movcs %xcc, %l5, %o1 movgu %xcc, 0x2DF, %i4 movrlz %g2, %i7, %o3 movrgz %o6, %g1, %o7 subc %l1, %l3, %o0 addccc %o2, 0x295, %g7 addc %l4, 0x0ED, %i6 movrgz %i2, %l6, %l7 movrgz %g3, 0x1BF, %l0 movpos %xcc, %i0, %i3 xnor %g5, 0x18F, %g4 and %o4, %i5, %l2 movleu %xcc, 0x0CD, %g6 movpos %icc, %o5, %i1 movvs %icc, 0x2FB, %o1 andncc %l5, 0x038, %g2 subcc %i4, 0x0, %i7 movrgz %o3, %o6, %g1 sllx %l3, 0x0, %o7 and %o0, 0x333, %l1 sllx %g7, 0x4, %i6 movl %icc, %i2, %o2 movgu %xcc, %l7, %g3 mova %xcc, 0x3A9, %l0 movle %icc, 0x3E8, %i0 movneg %xcc, 0x177, %l6 srlx %i3, 0x4, %g4 movcc %icc, 0x04C, %l4 movvs %icc, 0x3F8, %i5 addc %o4, %g6, %l2 and %i1, 0x0E9, %g5 movleu %icc, %l5, %g2 movle %icc, %o5, %o1 movl %icc, 0x00B, %i4 movneg %xcc, 0x07D, %i7 srax %g1, 0xD, %o6 or %o7, %l3, %o3 movrgz %o0, 0x028, %l1 addc %i6, %g7, %i2 sllx %o2, %l7, %g3 movl %icc, 0x2E2, %i0 xorcc %i3, %l6, %g4 alignaddrl %l4, %i5, %l0 xnorcc %l2, 0x226, %g6 andcc %g5, %l5, %o4 subc %o5, %o1, %g2 or %i7, %i1, %i4 movrne %o6, 0x130, %l3 addc %o7, 0x035, %o0 subcc %g1, 0xA, %o3 addc %i6, 0x09F, %i2 xorcc %o2, 0x041, %g7 subc %l1, 0xF, %i0 subccc %i3, %g3, %l6 or %g4, 0x30B, %l7 srlx %i5, 0x1, %l0 orcc %l2, %l4, %l5 addc %g5, %o4, %o5 srl %o1, 0x1, %g6 movrne %g2, 0x032, %i7 andcc %i4, 0x1AD, %o6 subc %i1, %l3, %o0 movrgz %g1, %i6, %i2 subc %o7, 0x0, %o2 sub %o3, 0x1, %g7 xor %l1, 0x28C, %i0 move %icc, 0x12D, %g3 movrgz %i3, 0x1B6, %g4 mova %xcc, 0x11A, %l7 addc %i5, 0x168, %l0 alignaddr %l4, %l2, %g5 movleu %icc, 0x1C2, %l5 or %l6, %o5, %o4 xnorcc %o1, %g6, %i7 movrgz %i4, %o6, %i1 sra %o0, 0x2, %g2 addc %l3, 0x129, %g1 addcc %i2, 0x257, %o7 or %i6, %o3, %g7 orn %i0, %l1, %i3 xnorcc %g3, 0x1FA, %o2 movcs %xcc, 0x333, %i5 xor %l7, %l0, %l2 sra %g4, %l5, %l6 xnor %o5, %l4, %o4 subc %g6, %g5, %i4 add %o6, %i7, %i1 movrlz %g2, 0x3DE, %o0 xnor %o1, %g1, %i2 srl %l3, 0x3, %i6 sll %o3, 0xF, %i0 sllx %g7, 0xE, %l1 subccc %o7, 0x6, %g3 srax %o2, %i3, %l0 andncc %l7, %g4, %l2 movpos %icc, 0x101, %l5 movrlez %l6, %o5, %l4 xor %i5, 0x07F, %g5 movrne %i4, 0x26A, %o4 movrne %i7, 0x25E, %i1 movn %icc, 0x0AA, %g6 mova %icc, %o0, %o6 or %g2, 0x3D7, %i2 sub %g1, %i6, %l3 movneg %xcc, 0x06D, %i0 andn %g7, %o3, %o1 movle %icc, 0x2EE, %l1 andcc %o7, 0x01B, %o2 addc %l0, 0x211, %g3 movcc %icc, 0x016, %l7 sra %l2, %l5, %l6 addcc %o5, 0x246, %l4 movleu %icc, 0x2F8, %i5 addc %i3, %g5, %g4 addccc %i7, 0x3F6, %i4 movgu %xcc, 0x3BA, %o4 movgu %xcc, 0x260, %i1 movrgz %g6, %g2, %o0 sub %g1, 0x8, %i6 sllx %o6, 0x5, %l3 subc %i0, %o3, %i2 movleu %xcc, %g7, %l1 movle %xcc, %o1, %l0 movrgz %o2, 0x24D, %l7 orn %g3, 0x1DE, %l2 alignaddrl %l6, %l5, %o7 xnorcc %l4, %o5, %g5 movrne %i3, %i5, %i4 xor %g4, 0x1A1, %o4 mova %icc, %i7, %g2 orcc %i1, %g1, %g6 movle %icc, %o6, %i6 movrgz %l3, 0x06F, %o0 andcc %o3, 0x131, %i0 movneg %icc, 0x2E6, %i2 movgu %icc, 0x03B, %l1 alignaddrl %o1, %g7, %o2 orn %g3, %l7, %l0 and %l5, 0x313, %l6 orncc %l4, %o5, %o7 movcc %xcc, %g5, %l2 movneg %xcc, 0x3B8, %i5 movg %icc, 0x15B, %i4 movl %icc, %o4, %g4 orn %g2, 0x35B, %i3 movgu %icc, %i7, %g1 xnor %o6, 0x1A6, %i1 movrlz %g6, 0x081, %o0 movvc %icc, 0x2AE, %i6 movneg %xcc, 0x10D, %l3 srax %o3, 0x2, %l1 movrlez %o1, %i2, %g7 subc %o2, 0xF, %i0 addc %l7, %g3, %l6 xorcc %l5, 0x196, %o5 alignaddrl %o7, %l4, %l2 subc %g5, 0x1, %i4 movleu %icc, 0x0CE, %l0 subc %i5, 0xB, %g2 alignaddrl %i3, %g4, %i7 movle %xcc, 0x0F7, %g1 addcc %o6, %o4, %i1 movrgz %g6, %l3, %o3 addc %l1, 0x23E, %o0 xnorcc %i6, 0x048, %i2 addccc %o1, %g7, %l7 xnor %o2, 0x04A, %g3 movvc %icc, %l6, %i0 movne %icc, %o5, %l5 orncc %l2, %l4, %o7 move %icc, %g5, %i4 movge %xcc, 0x36A, %l0 movrlz %g2, 0x3E8, %i3 orn %i7, 0x392, %i5 sra %o6, %g1, %o4 movrgz %g4, %g6, %i1 movle %xcc, %l3, %o0 alignaddrl %l1, %i2, %o1 movcs %xcc, %g7, %o3 movrz %o2, %l7, %g3 movle %xcc, 0x020, %i6 xnor %l6, %l5, %o5 sub %l4, %o7, %i0 and %g5, 0x39E, %i4 movne %icc, %l0, %g2 movrz %i7, 0x25F, %l2 movneg %icc, 0x194, %o6 addccc %i3, %g1, %i5 orcc %o4, %i1, %l3 srax %g4, 0x1, %o0 andcc %l1, 0x29D, %o1 xnorcc %i2, 0x110, %o3 movcc %icc, 0x02D, %g7 movrgz %o2, 0x0DB, %l7 move %icc, %g3, %i6 andn %g6, 0x008, %l6 orcc %l5, %o5, %l4 srlx %i0, %g5, %o7 movg %xcc, 0x1A4, %i4 movpos %xcc, %i7, %l0 sub %o6, 0x5, %l2 movge %icc, %i3, %g1 orn %o4, 0x1A8, %i5 and %l3, 0x088, %i1 movcc %icc, 0x07D, %g4 movrlz %o0, 0x202, %g2 alignaddr %l1, %o3, %i2 srax %g7, %l7, %o1 movpos %icc, 0x258, %i6 movne %icc, %g3, %l6 movrgz %l5, 0x1EF, %g6 movleu %icc, 0x3D5, %l4 movle %icc, 0x2F1, %i0 movcs %xcc, 0x225, %o2 movrz %o5, 0x36A, %i4 subcc %i7, %o7, %g5 movrlez %o6, 0x072, %l2 movle %icc, 0x31A, %i3 movrgz %l0, 0x2BE, %i5 andn %o4, 0x264, %i1 alignaddrl %l3, %g1, %o0 andncc %g2, %g4, %l1 addccc %o3, 0x3A8, %i2 subc %l7, 0x2, %i6 movneg %icc, 0x02B, %o1 movcc %icc, 0x2A0, %g3 xnorcc %l6, 0x1F5, %l5 add %l4, %g7, %g6 movrne %o5, %i0, %o2 movne %xcc, 0x211, %i4 sllx %o7, %o6, %i7 movrne %g5, 0x11C, %i3 subc %l0, 0xB, %o4 movrne %i5, 0x214, %l3 movle %icc, 0x064, %l2 xnorcc %g1, %o0, %g4 andn %i1, 0x003, %o3 orn %l1, 0x3CC, %g2 alignaddrl %i2, %i6, %o1 xor %g3, %l6, %l5 alignaddrl %l7, %l4, %g6 andncc %g7, 0x3FD, %i0 addc %o2, %o7, %i4 movge %xcc, 0x117, %i7 move %xcc, 0x0B3, %g5 orncc %o5, %l0, %o6 srl %i5, 0x8, %o4 addc %l2, 0x266, %l3 addccc %o0, %i3, %i1 movrlez %g4, 0x207, %g1 movgu %xcc, 0x1C0, %g2 movn %icc, 0x31A, %l1 mova %icc, %o3, %i2 xor %i6, %o1, %g3 movneg %xcc, %l5, %l4 subccc %l7, 0x7, %g7 addc %i0, 0x09F, %g6 movpos %icc, 0x108, %o7 movvc %xcc, 0x1B6, %i4 movle %xcc, 0x16B, %o2 addc %l6, 0x15A, %i7 subc %l0, %o5, %g5 movrlz %o6, 0x08C, %i5 movg %xcc, 0x14D, %o4 srlx %l2, %o0, %i1 sllx %i3, 0xA, %l3 movne %xcc, 0x0B4, %g4 andncc %g1, 0x2D7, %l1 movrne %i2, 0x323, %o3 movrlz %i6, 0x3A9, %o1 andn %g2, %g3, %l5 movle %xcc, 0x1E4, %l4 movrne %g7, 0x39A, %i0 movrlz %l7, 0x385, %g6 sub %i4, 0x6, %l6 andncc %o2, %i7, %o7 movpos %xcc, 0x063, %o5 srl %l0, 0x3, %i5 xnorcc %o4, 0x2C1, %o6 movrne %g5, %l2, %i3 movcs %icc, 0x025, %o0 movrne %i1, %g1, %g4 movgu %icc, 0x34E, %l3 movn %xcc, 0x03F, %l1 movl %icc, %i2, %o3 srax %o1, 0xC, %g2 sub %i6, 0x1, %l5 xnorcc %g7, %i0, %g3 subc %g6, %l4, %l6 addc %l7, 0x2BB, %i7 movl %icc, 0x16A, %o2 subc %o7, 0x2, %o5 and %i4, 0x3FE, %l0 sll %i5, %g5, %l2 move %xcc, 0x345, %o6 sll %o4, %i1, %o0 movrz %g1, %l3, %i3 andncc %l1, %i2, %o1 movle %xcc, %g2, %g4 movrne %l5, %g7, %i6 alignaddrl %i0, %o3, %l4 subc %g6, %l7, %l6 orcc %g3, 0x13F, %i7 movrgz %o7, %o5, %l0 sub %i4, 0x9, %o2 srax %g5, 0x4, %i5 mova %icc, 0x127, %l2 movg %xcc, 0x2DC, %o6 alignaddrl %o0, %i1, %g1 movl %xcc, %o4, %i3 movle %icc, 0x37F, %l3 movrgz %o1, 0x38B, %g2 subcc %i2, 0x0, %g4 movvs %xcc, 0x158, %l5 addcc %l1, 0x29F, %g7 movrlz %o3, %i6, %g6 xorcc %l7, 0x09A, %l6 andn %g3, %i7, %i0 andncc %l4, 0x214, %l0 movrgz %o7, 0x16F, %i4 subc %o5, 0xB, %o2 subc %l2, %o6, %i5 srl %i1, 0xB, %g5 movne %icc, %g1, %o4 sub %o0, 0x3, %l3 subccc %i3, 0xF, %i2 movneg %icc, 0x1AE, %g4 movne %icc, 0x2B7, %g2 srax %l5, 0xB, %g7 andcc %o1, 0x154, %i6 andn %o3, %l1, %l6 sll %g6, 0x7, %l7 sll %g3, %i0, %l0 movn %icc, 0x18F, %l4 movcs %xcc, %i4, %o5 movcc %xcc, 0x346, %i7 mova %xcc, 0x2E5, %l2 xnorcc %o2, 0x064, %i5 subcc %o6, %g5, %o7 add %i1, %o4, %o0 movpos %icc, %g1, %l3 or %i2, %g2, %g4 movpos %xcc, %g7, %o1 srl %i6, 0x6, %l5 movrgz %o3, %l6, %g6 xorcc %i3, 0x047, %l7 xor %i0, 0x0EC, %l1 movvs %icc, 0x13B, %g3 move %xcc, %l4, %o5 movgu %icc, %l0, %i7 orn %l2, 0x19D, %o2 move %icc, %i4, %g5 srl %o6, 0xB, %i5 xor %o4, %i1, %o0 addccc %l3, 0x100, %o7 movvs %icc, %g1, %g4 subccc %g2, %g7, %o1 srlx %l5, %i2, %i6 subcc %o3, %g6, %i3 movrz %l7, %i0, %l1 srl %g3, 0x4, %l6 and %l4, %l0, %i7 subcc %o5, 0xA, %i4 movpos %xcc, %o2, %g5 add %o6, %o4, %i1 subc %i5, 0xA, %l3 or %l2, 0x019, %o7 movrgz %o0, 0x32A, %g4 movle %icc, 0x22A, %g1 orncc %g7, %g2, %l5 mova %icc, %o1, %i6 movn %xcc, %o3, %i2 and %i3, %g6, %l7 subcc %g3, 0x7, %l1 sub %i0, %l6, %i7 subc %l0, 0x7, %l4 addccc %o2, 0x3A7, %o5 movrgz %g5, 0x0AD, %i4 movge %xcc, %o6, %o4 move %icc, 0x1D9, %i1 movrz %l3, %l2, %o7 alignaddrl %i5, %g4, %g1 movge %xcc, 0x399, %o0 movrlez %g7, 0x2D2, %l5 subcc %g2, %o3, %o1 or %i3, %i6, %i2 xnor %g3, 0x3AD, %l7 andncc %g6, %l1, %i7 orn %i0, %l6, %o2 movrgz %l0, 0x033, %g5 subc %o5, 0x7, %l4 orn %o6, 0x252, %o4 subc %l3, 0xA, %l2 xorcc %i1, %o7, %i5 subccc %g1, %i4, %o0 subc %g7, 0x8, %g4 movgu %xcc, 0x088, %o3 movne %xcc, %g2, %l5 xor %i3, %i2, %i6 sub %o1, %g6, %l1 addccc %l7, 0x058, %i7 xorcc %l6, %g3, %i0 movge %xcc, %o2, %l0 alignaddr %o5, %o6, %g5 xorcc %o4, 0x228, %l2 movpos %xcc, 0x39F, %l3 movneg %icc, %i1, %i5 srl %o7, 0x3, %l4 andncc %i4, %g7, %o0 xnor %g4, 0x261, %g1 movrne %l5, 0x24F, %o3 sllx %i2, 0x8, %i6 srlx %o1, %g2, %i3 andcc %l7, %i7, %g6 srl %l1, %i0, %g3 srl %l6, 0x5, %l0 movcc %xcc, %o6, %o5 alignaddr %g5, %o2, %l3 xor %i1, %l2, %o7 movrlez %i5, 0x3F2, %o4 xnorcc %i4, 0x043, %l4 movge %icc, 0x058, %g4 movpos %xcc, %o0, %g1 sra %o3, %g7, %l5 andcc %o1, %g2, %i2 sll %i6, 0x7, %i3 addc %g6, 0x05D, %l1 movgu %icc, %i7, %i0 movrne %g3, 0x079, %l0 movrgz %l6, %l7, %o6 movne %icc, %o2, %l3 addc %g5, 0x37F, %o5 andncc %i1, 0x0F6, %l2 srl %i5, 0x4, %i4 alignaddrl %o4, %o7, %g4 xnor %o0, 0x179, %o3 movg %icc, 0x2E6, %g1 mova %xcc, %l4, %o1 sra %g2, 0x4, %l5 movrgz %g7, 0x317, %i6 movgu %xcc, 0x188, %i2 alignaddr %l1, %g6, %i7 srlx %g3, 0x5, %i3 sll %l0, %i0, %o6 movvc %xcc, %o2, %l6 sll %g5, 0xF, %l3 andn %o5, 0x08B, %l2 orn %i1, 0x0E0, %i5 movg %icc, 0x2A8, %l7 sra %o7, 0x0, %g4 sub %o4, %o0, %o3 movgu %xcc, 0x0D5, %l4 or %g1, 0x3DF, %g2 orncc %l5, 0x283, %g7 sllx %i4, %o1, %l1 or %g6, %i2, %g3 orcc %i7, 0x358, %l0 alignaddr %i3, %i0, %o6 and %l6, %i6, %l3 or %o5, 0x162, %o2 andn %i1, 0x02E, %l2 movrgz %g5, %o7, %i5 addcc %o4, %g4, %o3 addcc %l7, 0x204, %o0 orcc %g1, %l5, %l4 srlx %g7, %g2, %l1 xorcc %i4, 0x2E6, %i2 and %g6, 0x3BB, %g3 andcc %o1, 0x2CC, %i7 xnor %i3, %l0, %o6 srlx %i0, %l3, %i6 movg %xcc, 0x281, %o5 alignaddrl %l6, %o2, %i1 alignaddrl %l2, %g5, %i5 alignaddr %o7, %g4, %o3 movle %xcc, %l7, %g1 and %l5, %l4, %g7 srlx %o4, %l1, %o0 addc %i2, 0x078, %g6 movcs %xcc, %i4, %g2 addc %i7, %g3, %l0 xnorcc %o6, 0x252, %i3 xor %o1, %i6, %i0 movrz %l6, 0x02A, %l3 xnor %i1, 0x0EF, %o5 subc %o2, 0xC, %l2 subccc %i5, 0x4, %g4 subccc %g5, %l7, %o7 movne %xcc, 0x37C, %g1 movl %icc, %l5, %o3 move %icc, 0x283, %g7 sllx %l1, %o0, %i2 xor %l4, 0x047, %i4 addcc %o4, %g6, %g3 orncc %l0, 0x063, %g2 orncc %i7, 0x23A, %i3 xorcc %o1, 0x1E8, %o6 subcc %i6, 0xF, %l6 movrlz %i0, 0x08A, %l3 xnorcc %o5, %l2, %o2 or %i5, %g5, %g4 xnorcc %l7, 0x1BA, %g1 movcc %icc, 0x03A, %o7 movne %icc, %i1, %g7 movrlez %l1, %o3, %o0 movrlez %l4, 0x2B4, %i2 movrgz %i4, %l5, %g3 sra %g6, %g2, %o4 movrne %i3, %i7, %o1 alignaddrl %i6, %l0, %i0 and %l6, %o6, %l3 movne %xcc, %l2, %o2 mova %xcc, %g5, %g4 movcs %icc, 0x29E, %i5 orncc %o5, %l7, %i1 move %xcc, 0x34F, %o7 movcs %xcc, %l1, %g7 movrne %g1, 0x0AC, %o0 movneg %icc, %i2, %l4 subc %l5, 0x0, %g3 subc %o3, %i4, %o4 movcs %icc, 0x0B8, %i3 add %g2, %g6, %i7 srlx %o1, %i6, %i0 movrlez %l6, 0x145, %l0 xnor %l2, %o2, %g5 movgu %icc, %o6, %l3 movg %icc, 0x112, %i5 movvc %icc, 0x023, %l7 movrlz %i1, %o5, %g4 movgu %xcc, 0x10C, %o7 movne %icc, 0x2F8, %l1 addccc %o0, 0x38C, %g1 or %g7, %l5, %i2 alignaddrl %l4, %g3, %o3 xor %i3, %o4, %g2 xor %g6, 0x1FA, %o1 move %xcc, 0x110, %i4 xnor %i6, %l6, %i7 or %l0, 0x16B, %o2 movneg %xcc, 0x368, %g5 movrlz %i0, 0x03F, %l2 andcc %o6, 0x093, %i5 movle %icc, 0x221, %l7 srlx %i1, 0x9, %l3 movge %xcc, 0x11E, %g4 addccc %o5, %o7, %o0 orn %g1, 0x0CE, %g7 movne %xcc, 0x2D7, %l5 addccc %l4, 0x02A, %l1 move %xcc, 0x191, %g3 movneg %icc, 0x169, %o3 movrgz %i2, 0x09A, %o4 movvs %xcc, 0x1FE, %g2 subcc %o1, %i4, %g6 subc %i6, 0xC, %i7 movvc %icc, 0x264, %l6 movrne %i3, 0x1A7, %l0 orn %i0, %g5, %l2 addcc %o2, 0x050, %o6 addc %l7, %i1, %i5 and %g4, %o5, %o7 srl %g1, %l3, %l5 orcc %l4, 0x0CA, %g7 xor %o0, %g3, %l1 subc %i2, 0x6, %o3 or %o4, 0x16E, %i4 srax %g2, 0xC, %g6 subc %i6, %o1, %i7 sll %l6, %l0, %i3 movge %xcc, 0x1EF, %g5 mova %xcc, %o2, %l2 movneg %icc, %l7, %i1 xor %o6, 0x303, %g4 add %i0, %i5, %g1 orncc %o7, 0x168, %l3 and %o5, 0x16E, %g7 movrne %l4, %g3, %l1 and %i2, 0x073, %o3 sll %l5, 0x7, %i4 subc %g2, 0x8, %o4 movrgz %g6, %o1, %o0 mova %icc, 0x067, %i6 xnorcc %i7, 0x23A, %l0 andn %g5, 0x166, %l6 movvs %xcc, %l2, %o2 andncc %i1, 0x0CC, %o6 or %g4, 0x0BA, %i3 sub %i5, 0x7, %g1 movvs %icc, %o7, %i0 subcc %l7, 0x3, %l3 movpos %xcc, 0x37A, %l4 movneg %icc, %o5, %g7 and %i2, 0x3F1, %g3 movrz %l1, 0x397, %i4 subc %l5, %g2, %o4 alignaddrl %g6, %o0, %o3 andncc %i6, 0x027, %l0 movrlz %i7, 0x272, %o1 xorcc %l6, %o2, %l2 subccc %i1, 0x9, %g4 add %g5, %o6, %g1 subc %i3, 0xC, %o7 movl %xcc, 0x12A, %i5 subccc %i0, 0x2, %l4 srax %l7, 0xB, %g7 movg %icc, 0x058, %l3 sub %g3, %i2, %i4 andncc %o5, 0x3F8, %l5 movcc %xcc, 0x02D, %o4 orcc %l1, 0x038, %g2 movrz %o0, %g6, %l0 movpos %xcc, 0x016, %i7 movpos %xcc, 0x279, %o3 movrlz %o1, 0x30B, %i6 andncc %l6, 0x098, %l2 xnor %o2, 0x0CD, %g5 addc %o6, 0x3EE, %g4 sllx %i3, 0xD, %i1 addccc %o7, %i0, %g1 move %icc, 0x3D6, %i5 xor %l4, 0x331, %l3 subc %g3, 0xF, %i2 movne %icc, 0x37B, %i4 movrlz %l7, 0x011, %l5 xnorcc %o4, %l1, %g7 movle %xcc, 0x385, %g2 movg %xcc, 0x206, %o0 xnorcc %l0, %g6, %i7 orncc %o1, 0x15A, %o5 movl %xcc, 0x1E0, %l6 addc %o3, %l2, %g5 sra %i6, %o2, %g4 move %icc, %i1, %o6 alignaddrl %i3, %g1, %o7 movpos %xcc, 0x2BD, %i0 movn %xcc, 0x102, %l3 andn %i5, 0x239, %g3 movg %xcc, 0x31B, %i4 addc %l7, 0x046, %l5 andncc %i2, 0x2DD, %o4 addccc %g7, 0x179, %l4 xnor %l1, %g2, %l0 movcc %icc, 0x1ED, %i7 subccc %o1, 0x8, %o5 orcc %o0, 0x030, %g6 movvs %xcc, %l6, %g5 movcs %xcc, 0x309, %l2 xorcc %i6, 0x1FD, %o2 movcc %xcc, 0x366, %g4 movle %icc, %i1, %o6 sllx %o3, 0xD, %o7 andcc %i3, 0x1F5, %g1 addc %i0, 0x00E, %l3 xor %i5, %i4, %g3 movleu %xcc, %l5, %o4 subcc %l7, %i2, %l4 orncc %g7, 0x2F8, %l1 alignaddr %g2, %o1, %o5 orn %o0, 0x0F3, %g6 movpos %xcc, 0x3FE, %l6 and %l0, 0x1B8, %g5 subccc %i6, %l2, %g4 movrne %i7, 0x37D, %o6 movrgz %i1, 0x088, %o7 sub %o3, 0x8, %g1 srax %i3, %l3, %o2 sub %i5, %i0, %g3 srlx %l5, %l7, %i4 xnorcc %l4, 0x3DD, %i2 andcc %o4, %g2, %g7 movn %xcc, %o1, %o5 xor %g6, %l1, %l0 movneg %icc, 0x39E, %g5 mova %icc, 0x0AB, %l6 mova %xcc, 0x180, %o0 movn %icc, %i6, %g4 addc %o6, 0x0E7, %l2 andncc %i1, 0x3A9, %o3 alignaddr %o7, %i7, %l3 movneg %icc, 0x2F2, %o2 xnorcc %i5, %i3, %i0 andncc %g3, %l7, %l5 xorcc %i4, %i2, %o4 subc %g1, 0x9, %l4 movl %icc, %o1, %g2 addccc %g6, 0x35E, %l1 subcc %g7, %g5, %l6 andncc %o0, %o5, %g4 orncc %i6, %l2, %o6 movvs %icc, %i1, %o3 mova %icc, %o7, %l0 sub %i7, 0x9, %o2 addc %i3, 0x323, %i0 movrz %g3, 0x0C4, %l3 movneg %xcc, 0x210, %i5 movle %xcc, 0x0DE, %l5 andcc %i2, 0x286, %l7 alignaddrl %g1, %o4, %o1 movrlz %g2, 0x359, %l4 movcc %xcc, 0x2E3, %g6 subc %g7, 0xD, %l1 movle %xcc, %i4, %g5 movpos %xcc, 0x3D2, %o5 move %xcc, 0x20E, %o0 movvs %xcc, 0x11D, %g4 movcc %xcc, 0x1AA, %i6 mova %icc, 0x230, %l2 move %icc, %o6, %o3 subcc %i1, 0x4, %o7 movneg %xcc, 0x147, %i7 alignaddr %o2, %l6, %l0 addcc %i3, %l3, %i5 srax %i0, %g3, %i2 movl %xcc, %l5, %o4 addc %l7, 0x24D, %g2 addc %g1, %o1, %g7 or %l1, 0x288, %l4 alignaddr %g6, %g5, %i4 subc %g4, 0x4, %o5 movle %icc, %l2, %o6 srax %o3, %i1, %i6 subc %i7, 0xA, %o7 alignaddrl %o0, %l0, %o2 sub %i3, 0x2, %l3 addcc %i0, 0x264, %g3 and %l6, 0x1C1, %i2 movne %xcc, 0x113, %l5 andncc %i5, 0x1A9, %o4 subccc %g1, 0xF, %o1 move %xcc, %g7, %l7 subc %g2, 0x5, %g6 addccc %l1, %l4, %i4 orn %o5, %g4, %g5 addccc %o6, 0x11E, %o3 xorcc %i6, 0x26B, %i1 movcc %icc, %o7, %o0 subcc %i7, %l2, %l0 or %i3, %i0, %l3 movl %xcc, 0x1E4, %o2 andncc %g3, %i2, %i5 andncc %o4, %l6, %o1 movrz %l5, 0x0CC, %g7 movrgz %g1, 0x1EF, %g6 addcc %l1, %l7, %i4 addc %g2, 0x058, %g4 sra %g5, %o5, %l4 movvc %icc, %i6, %o6 xor %o3, 0x04E, %o0 alignaddr %o7, %i7, %l0 addcc %l2, %i3, %l3 movrgz %i1, 0x263, %i0 movvs %icc, 0x190, %o2 movne %icc, %i2, %o4 xorcc %l6, %o1, %g3 andcc %i5, 0x1B3, %g1 addccc %g7, 0x31B, %l5 movgu %xcc, 0x00C, %l1 sllx %l7, 0xE, %g2 movvc %icc, %g4, %g6 mova %xcc, %g5, %o5 mova %icc, %l4, %i4 and %o3, 0x363, %o6 mova %icc, %i6, %o0 movrlez %o7, 0x04C, %l0 movge %icc, 0x0A3, %i3 add %l2, %i7, %i1 movpos %xcc, %o2, %i2 movn %xcc, 0x210, %o4 movle %xcc, 0x071, %l3 movleu %xcc, 0x31D, %o1 movn %icc, %g3, %l6 movg %xcc, 0x28B, %i0 sub %g7, %g1, %l1 movrlz %i5, 0x22D, %g2 subc %g4, 0xB, %l5 movn %xcc, %l7, %g6 movvc %icc, %g5, %i4 sllx %o3, %o6, %l4 subc %i6, %o5, %l0 movne %icc, %o0, %l2 addccc %o7, 0x35C, %i3 xnor %i7, %i2, %o2 addcc %o4, 0x10B, %i1 movrne %l3, %l6, %g3 alignaddrl %i0, %o1, %g7 movvc %icc, 0x265, %g1 movrz %l1, 0x260, %i5 movvs %xcc, %l5, %l7 addcc %g6, %g4, %g5 movrne %o3, %o6, %l4 movrlz %i6, 0x38B, %i4 movg %icc, 0x38A, %l0 subc %o5, %l2, %o7 movrlz %g2, 0x14C, %o0 movcc %xcc, 0x07D, %i7 movn %xcc, 0x172, %i2 movl %icc, %o2, %i3 and %i1, 0x1DD, %o4 sll %l6, 0x8, %l3 orn %g3, %o1, %i0 sllx %g1, %i5, %g7 add %l5, %g6, %l7 srlx %g4, %l1, %o3 movl %icc, 0x02F, %l4 mova %icc, %i6, %o6 or %i4, 0x25F, %o5 srlx %g5, 0x8, %l2 addccc %o7, %g2, %o0 movl %xcc, %l0, %i7 andn %o2, %i1, %i3 movl %xcc, %l6, %o4 andncc %l3, %i2, %i0 movneg %icc, 0x2D5, %g1 movrne %g3, 0x1B4, %o1 movleu %icc, 0x293, %g7 movge %icc, %g6, %l5 subcc %l7, 0x9, %i5 movleu %icc, %g4, %l1 sllx %l4, %i6, %o3 xor %i4, 0x23B, %o6 or %g5, 0x398, %o5 xor %l2, %o0, %g2 movcs %xcc, 0x286, %l0 movpos %xcc, 0x177, %i7 alignaddr %o2, %o7, %i1 alignaddrl %o4, %i3, %i2 movneg %icc, 0x357, %i0 xnorcc %l3, 0x290, %g3 sll %o1, 0x1, %g7 subc %g6, %l5, %l6 movneg %icc, 0x0DC, %g1 andcc %g4, 0x3ED, %i5 xnorcc %l7, %i6, %l4 subcc %i4, %l1, %o3 add %o5, %o6, %g5 movpos %icc, %o0, %l2 movrz %i7, 0x136, %g2 movcs %xcc, %o2, %i1 andncc %o7, %l0, %i2 orncc %i3, 0x32C, %i0 movge %xcc, 0x3E6, %o4 movvc %xcc, 0x344, %l3 xor %g7, 0x161, %g3 movvs %xcc, %l5, %g6 orcc %g1, 0x209, %o1 movl %icc, %g4, %l7 addc %i6, 0x3E0, %l6 movrlez %l4, 0x216, %i5 movge %icc, 0x380, %o3 movg %xcc, 0x313, %l1 xnorcc %o5, %g5, %i4 orcc %l2, %o0, %i7 movg %icc, 0x263, %g2 movcc %xcc, 0x31C, %o2 movrlz %o6, 0x00C, %l0 movneg %xcc, 0x34F, %o7 andn %i2, %i0, %i1 movpos %xcc, 0x1FA, %o4 alignaddr %g7, %g3, %l3 sll %l5, %i3, %g6 movvs %icc, 0x0CC, %o1 srl %g1, %g4, %i6 movrgz %l7, %i5, %l6 move %icc, %l1, %o3 movneg %xcc, 0x3A2, %l4 movcc %icc, 0x08E, %g5 xnorcc %o5, %i4, %i7 movrgz %g2, %o2, %l2 sll %o6, %o7, %i2 srax %o0, %i0, %l0 andncc %g7, 0x30E, %g3 or %i1, %l3, %o4 movleu %xcc, %i3, %o1 movrz %g1, 0x1A4, %g4 srax %g6, 0x4, %i6 sll %l5, %i5, %l7 add %l6, %o3, %l1 movrne %l4, 0x327, %o5 subc %i4, 0x9, %g2 movcs %icc, 0x14E, %o2 mova %xcc, %g5, %i7 subc %o6, 0xE, %i2 movne %xcc, 0x0EA, %o0 subc %l2, %l0, %o7 orncc %i0, 0x30F, %g3 orcc %g7, 0x2DC, %i1 addccc %l3, 0x351, %o1 subcc %o4, %g4, %i3 sub %g1, 0x2, %i6 addcc %i5, 0x0E9, %l7 movpos %xcc, 0x352, %l5 move %icc, %g6, %o3 subc %l1, 0x8, %l4 subc %o5, %g2, %i4 movrlez %g5, 0x152, %i7 orn %l6, %i2, %o0 movle %icc, 0x24D, %o6 orn %l2, 0x2FD, %o2 movpos %xcc, 0x394, %l0 sub %g3, 0xE, %o7 movrlz %i0, 0x070, %i1 subc %l3, 0x6, %o1 addc %g7, 0x2EA, %g4 movvc %xcc, 0x1D0, %o4 movcs %xcc, 0x3AC, %g1 movpos %xcc, %i5, %i3 alignaddrl %l5, %i6, %g6 addcc %l1, 0x3E3, %l7 sra %l4, %o3, %i4 mova %xcc, 0x15B, %g2 orncc %o5, 0x305, %g5 movg %xcc, 0x21A, %l6 subc %i7, %o0, %l2 andn %i2, %o6, %l0 addc %o2, 0x052, %g3 andcc %o7, 0x280, %i0 movvc %xcc, %l3, %g7 or %o1, %g4, %o4 alignaddrl %i5, %i3, %g1 addcc %i1, %i6, %g6 subccc %l7, 0xC, %l1 srlx %o3, %l5, %g2 sll %i4, 0x3, %o5 movleu %icc, 0x190, %l6 movleu %icc, 0x30C, %g5 addccc %o0, 0x256, %l2 EXIT_GOOD /* test finish */ /************************************************************************ Test case data start ************************************************************************/ .data user_data_start: .word 0x78FE3A40 .word 0xC70CC286 .end