xchg.py (5081:2ccce8600a9d) xchg.py (5119:a4469f2919f3)
1# Copyright (c) 2007 The Hewlett-Packard Development Company
2# All rights reserved.
3#
4# Redistribution and use of this software in source and binary forms,
5# with or without modification, are permitted provided that the
6# following conditions are met:
7#
8# The software must be used only for Non-Commercial Use which means any

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

63 # This probably doesn't make much of a difference, but it's easy.
64 xor reg, reg, regm
65 xor regm, regm, reg
66 xor reg, reg, regm
67};
68
69def macroop XCHG_R_M
70{
1# Copyright (c) 2007 The Hewlett-Packard Development Company
2# All rights reserved.
3#
4# Redistribution and use of this software in source and binary forms,
5# with or without modification, are permitted provided that the
6# following conditions are met:
7#
8# The software must be used only for Non-Commercial Use which means any

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

63 # This probably doesn't make much of a difference, but it's easy.
64 xor reg, reg, regm
65 xor regm, regm, reg
66 xor reg, reg, regm
67};
68
69def macroop XCHG_R_M
70{
71 ld t1, seg, sib, disp
71 ldst t1, seg, sib, disp
72 st reg, seg, sib, disp
73 mov reg, reg, t1
74};
75
76def macroop XCHG_R_P
77{
78 rdip t7
72 st reg, seg, sib, disp
73 mov reg, reg, t1
74};
75
76def macroop XCHG_R_P
77{
78 rdip t7
79 ld t1, seg, riprel, disp
79 ldst t1, seg, riprel, disp
80 st reg, seg, riprel, disp
81 mov reg, reg, t1
82};
83
84def macroop XCHG_M_R
85{
80 st reg, seg, riprel, disp
81 mov reg, reg, t1
82};
83
84def macroop XCHG_M_R
85{
86 ld t1, seg, sib, disp
86 ldst t1, seg, sib, disp
87 st reg, seg, sib, disp
88 mov reg, reg, t1
89};
90
91def macroop XCHG_P_R
92{
93 rdip t7
87 st reg, seg, sib, disp
88 mov reg, reg, t1
89};
90
91def macroop XCHG_P_R
92{
93 rdip t7
94 ld t1, seg, riprel, disp
94 ldst t1, seg, riprel, disp
95 st reg, seg, riprel, disp
96 mov reg, reg, t1
97};
98'''
95 st reg, seg, riprel, disp
96 mov reg, reg, t1
97};
98'''