specialize.isa (4865:4f4a7fe48b5b) specialize.isa (4868:99d4946469a1)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2007 The Hewlett-Packard Development Company
4// All rights reserved.
5//
6// Redistribution and use of this software in source and binary forms,
7// with or without modification, are permitted provided that the
8// following conditions are met:

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

171 (doRipRelativeDecode, Name, copy.copy(opTypes), memEnv))
172 elif opType.tag in ("I", "J"):
173 # Immediates
174 Name += "_I"
175 elif opType.tag in ("PR", "R", "VR"):
176 # Non register modrm settings should cause an error
177 env.addReg(ModRMRMIndex)
178 Name += "_R"
1// -*- mode:c++ -*-
2
3// Copyright (c) 2007 The Hewlett-Packard Development Company
4// All rights reserved.
5//
6// Redistribution and use of this software in source and binary forms,
7// with or without modification, are permitted provided that the
8// following conditions are met:

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

171 (doRipRelativeDecode, Name, copy.copy(opTypes), memEnv))
172 elif opType.tag in ("I", "J"):
173 # Immediates
174 Name += "_I"
175 elif opType.tag in ("PR", "R", "VR"):
176 # Non register modrm settings should cause an error
177 env.addReg(ModRMRMIndex)
178 Name += "_R"
179 elif opType.tag in ("X", "Y"):
180 # This type of memory addressing is for string instructions.
181 # They'll use the right index and segment internally.
182 Name += "_M"
179 else:
180 raise Exception, "Unrecognized tag %s." % opType.tag
181
182 # Generate code to return a macroop of the given name which will
183 # operate in the "emulation environment" env
184 return genMacroop(Name, env)
185}};
183 else:
184 raise Exception, "Unrecognized tag %s." % opType.tag
185
186 # Generate code to return a macroop of the given name which will
187 # operate in the "emulation environment" env
188 return genMacroop(Name, env)
189}};