insts.isa revision 14150
17119Sgblack@eecs.umich.edu// -*- mode:c++ -*- 27119Sgblack@eecs.umich.edu 313759Sgiacomo.gabrielli@arm.com// Copyright (c) 2010-2014, 2017 ARM Limited 47119Sgblack@eecs.umich.edu// All rights reserved 57119Sgblack@eecs.umich.edu// 67119Sgblack@eecs.umich.edu// The license below extends only to copyright in the software and shall 77119Sgblack@eecs.umich.edu// not be construed as granting a license to any other intellectual 87119Sgblack@eecs.umich.edu// property including but not limited to intellectual property relating 97119Sgblack@eecs.umich.edu// to a hardware implementation of the functionality of the software 107119Sgblack@eecs.umich.edu// licensed hereunder. You may use the software subject to the license 117119Sgblack@eecs.umich.edu// terms below provided that you ensure that this notice is replicated 127119Sgblack@eecs.umich.edu// unmodified and in its entirety in all distributions of the software, 137119Sgblack@eecs.umich.edu// modified or unmodified, in source code or in binary form. 147119Sgblack@eecs.umich.edu// 157119Sgblack@eecs.umich.edu// Redistribution and use in source and binary forms, with or without 167119Sgblack@eecs.umich.edu// modification, are permitted provided that the following conditions are 177119Sgblack@eecs.umich.edu// met: redistributions of source code must retain the above copyright 187119Sgblack@eecs.umich.edu// notice, this list of conditions and the following disclaimer; 197119Sgblack@eecs.umich.edu// redistributions in binary form must reproduce the above copyright 207119Sgblack@eecs.umich.edu// notice, this list of conditions and the following disclaimer in the 217119Sgblack@eecs.umich.edu// documentation and/or other materials provided with the distribution; 227119Sgblack@eecs.umich.edu// neither the name of the copyright holders nor the names of its 237119Sgblack@eecs.umich.edu// contributors may be used to endorse or promote products derived from 247119Sgblack@eecs.umich.edu// this software without specific prior written permission. 257119Sgblack@eecs.umich.edu// 267119Sgblack@eecs.umich.edu// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 277119Sgblack@eecs.umich.edu// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 287119Sgblack@eecs.umich.edu// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 297119Sgblack@eecs.umich.edu// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 307119Sgblack@eecs.umich.edu// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 317119Sgblack@eecs.umich.edu// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 327119Sgblack@eecs.umich.edu// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 337119Sgblack@eecs.umich.edu// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 347119Sgblack@eecs.umich.edu// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 357119Sgblack@eecs.umich.edu// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 367119Sgblack@eecs.umich.edu// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 377119Sgblack@eecs.umich.edu// 387119Sgblack@eecs.umich.edu// Authors: Gabe Black 397119Sgblack@eecs.umich.edu 4010037SARM gem5 Developers//AArch64 instructions 4110037SARM gem5 Developers##include "aarch64.isa" 4210037SARM gem5 Developers 437119Sgblack@eecs.umich.edu//Useful bits shared by memory instructions 447119Sgblack@eecs.umich.edu##include "mem.isa" 457119Sgblack@eecs.umich.edu 4614150Sjordi.vaquero@metempsy.com//AArch64 atomic operations 4714150Sjordi.vaquero@metempsy.com##include "amo64.isa" 4814150Sjordi.vaquero@metempsy.com 497119Sgblack@eecs.umich.edu//Loads of a single item 507119Sgblack@eecs.umich.edu##include "ldr.isa" 517120Sgblack@eecs.umich.edu 5210037SARM gem5 Developers//Loads of a single item, AArch64 5310037SARM gem5 Developers##include "ldr64.isa" 5410037SARM gem5 Developers 557199Sgblack@eecs.umich.edu//Miscellaneous instructions that don't fit elsewhere 567199Sgblack@eecs.umich.edu##include "misc.isa" 5710037SARM gem5 Developers##include "misc64.isa" 5810037SARM gem5 Developers 5910197SCurtis.Dunham@arm.comsplit exec; 6010197SCurtis.Dunham@arm.comsplit decoder; 6110197SCurtis.Dunham@arm.com 6210037SARM gem5 Developers//Stores of a single item, AArch64 6310037SARM gem5 Developers##include "str64.isa" 647199Sgblack@eecs.umich.edu 657120Sgblack@eecs.umich.edu//Stores of a single item 667120Sgblack@eecs.umich.edu##include "str.isa" 677134Sgblack@eecs.umich.edu 687134Sgblack@eecs.umich.edu//Load/store multiple 697134Sgblack@eecs.umich.edu##include "macromem.isa" 707138Sgblack@eecs.umich.edu 7110197SCurtis.Dunham@arm.comsplit exec; 7210197SCurtis.Dunham@arm.com 737138Sgblack@eecs.umich.edu//Data processing instructions 747138Sgblack@eecs.umich.edu##include "data.isa" 757151Sgblack@eecs.umich.edu 7610037SARM gem5 Developers//AArch64 data processing instructions 7710037SARM gem5 Developers##include "data64.isa" 7810037SARM gem5 Developers 797151Sgblack@eecs.umich.edu//Branches 807151Sgblack@eecs.umich.edu##include "branch.isa" 8110037SARM gem5 Developers##include "branch64.isa" 827160Sgblack@eecs.umich.edu 837160Sgblack@eecs.umich.edu//Multiply 847160Sgblack@eecs.umich.edu##include "mult.isa" 857318Sgblack@eecs.umich.edu 867318Sgblack@eecs.umich.edu//Divide 877318Sgblack@eecs.umich.edu##include "div.isa" 887322Sgblack@eecs.umich.edu 897639Sgblack@eecs.umich.edu//VFP 907322Sgblack@eecs.umich.edu##include "fp.isa" 9110037SARM gem5 Developers##include "fp64.isa" 927639Sgblack@eecs.umich.edu 9310197SCurtis.Dunham@arm.comsplit exec; 9410197SCurtis.Dunham@arm.com 957639Sgblack@eecs.umich.edu//Neon 967639Sgblack@eecs.umich.edu##include "neon.isa" 977732SAli.Saidi@ARM.com 9810037SARM gem5 Developers//AArch64 Neon 9910037SARM gem5 Developers##include "neon64.isa" 10010197SCurtis.Dunham@arm.comsplit decoder; 10110037SARM gem5 Developers##include "neon64_mem.isa" 10210037SARM gem5 Developers 10313759Sgiacomo.gabrielli@arm.com//SVE 10413759Sgiacomo.gabrielli@arm.com##include "sve.isa" 10513955Sgiacomo.gabrielli@arm.com##include "sve_mem.isa" 10613759Sgiacomo.gabrielli@arm.com 10710197SCurtis.Dunham@arm.com//m5 Pseudo-ops 1087732SAli.Saidi@ARM.com##include "m5ops.isa" 10913168Smatt.horsnell@arm.com 11013168Smatt.horsnell@arm.com//Crypto 11113168Smatt.horsnell@arm.com##include "crypto.isa" 11213170Sgiacomo.travaglini@arm.com 11313170Sgiacomo.travaglini@arm.com//Crypto 11413170Sgiacomo.travaglini@arm.com##include "crypto64.isa" 115