macromem.isa (8588:ef28ed90449d) macromem.isa (8607:5fb918115c07)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2010 ARM Limited
4// All rights reserved
5//
6// The license below extends only to copyright in the software and shall
7// not be construed as granting a license to any other intellectual
8// property including but not limited to intellectual property relating

--- 549 unchanged lines hidden (view full) ---

558 'code' : microPackNeonCode },
559 ['IsMicroop'])
560 header_output += MicroNeonMixLaneDeclare.subst(microPackNeonIop)
561 exec_output += MicroNeonMixExecute.subst(microPackNeonIop)
562}};
563
564let {{
565 exec_output = ''
1// -*- mode:c++ -*-
2
3// Copyright (c) 2010 ARM Limited
4// All rights reserved
5//
6// The license below extends only to copyright in the software and shall
7// not be construed as granting a license to any other intellectual
8// property including but not limited to intellectual property relating

--- 549 unchanged lines hidden (view full) ---

558 'code' : microPackNeonCode },
559 ['IsMicroop'])
560 header_output += MicroNeonMixLaneDeclare.subst(microPackNeonIop)
561 exec_output += MicroNeonMixExecute.subst(microPackNeonIop)
562}};
563
564let {{
565 exec_output = ''
566 for type in ('uint8_t', 'uint16_t', 'uint32_t'):
566 for typeSize in (8, 16, 32):
567 for sRegs in 1, 2:
567 for sRegs in 1, 2:
568 for dRegs in range(sRegs, 5):
568 for dRegs in range(sRegs, min(sRegs * 64 / typeSize + 1, 5)):
569 for format in ("MicroUnpackNeon%(sRegs)dto%(dRegs)dUop",
570 "MicroUnpackAllNeon%(sRegs)dto%(dRegs)dUop",
571 "MicroPackNeon%(dRegs)dto%(sRegs)dUop"):
572 Name = format % { "sRegs" : sRegs * 2,
573 "dRegs" : dRegs * 2 }
569 for format in ("MicroUnpackNeon%(sRegs)dto%(dRegs)dUop",
570 "MicroUnpackAllNeon%(sRegs)dto%(dRegs)dUop",
571 "MicroPackNeon%(dRegs)dto%(sRegs)dUop"):
572 Name = format % { "sRegs" : sRegs * 2,
573 "dRegs" : dRegs * 2 }
574 substDict = { "class_name" : Name, "targs" : type }
574 substDict = { "class_name" : Name,
575 "targs" : "uint%d_t" % typeSize }
575 exec_output += MicroNeonExecDeclare.subst(substDict)
576}};
577
578////////////////////////////////////////////////////////////////////
579//
580// Integer = Integer op Immediate microops
581//
582

--- 120 unchanged lines hidden ---
576 exec_output += MicroNeonExecDeclare.subst(substDict)
577}};
578
579////////////////////////////////////////////////////////////////////
580//
581// Integer = Integer op Immediate microops
582//
583

--- 120 unchanged lines hidden ---