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 typeSize in (8, 16, 32): |
567 for sRegs in 1, 2: |
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 } |
574 substDict = { "class_name" : Name, 575 "targs" : "uint%d_t" % typeSize } |
576 exec_output += MicroNeonExecDeclare.subst(substDict) 577}}; 578 579//////////////////////////////////////////////////////////////////// 580// 581// Integer = Integer op Immediate microops 582// 583 --- 120 unchanged lines hidden --- |