jump.py (6060:3d524dc980a8) jump.py (6344:b7104eda0795)
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

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

113};
114
115def macroop JMP_FAR_I
116{
117 # Put the whole far pointer into a register.
118 limm t2, imm, dataSize=8
119 # Figure out the width of the offset.
120 limm t3, dsz, dataSize=8
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

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

113};
114
115def macroop JMP_FAR_I
116{
117 # Put the whole far pointer into a register.
118 limm t2, imm, dataSize=8
119 # Figure out the width of the offset.
120 limm t3, dsz, dataSize=8
121 sll t3, t3, 3, dataSize=8
121 slli t3, t3, 3, dataSize=8
122 # Get the selector into t1.
123 sll t1, t2, t3, dataSize=8
124 mov t1, t0, t1, dataSize=2
125 # And get the offset into t2
126 mov t2, t0, t2
127 br rom_label("jmpFarWork")
128};
129

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

173};
174
175def macroop JMP_FAR_REAL_I
176{
177 # Put the whole far pointer into a register.
178 limm t2, imm, dataSize=8
179 # Figure out the width of the offset.
180 limm t3, dsz, dataSize=8
122 # Get the selector into t1.
123 sll t1, t2, t3, dataSize=8
124 mov t1, t0, t1, dataSize=2
125 # And get the offset into t2
126 mov t2, t0, t2
127 br rom_label("jmpFarWork")
128};
129

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

173};
174
175def macroop JMP_FAR_REAL_I
176{
177 # Put the whole far pointer into a register.
178 limm t2, imm, dataSize=8
179 # Figure out the width of the offset.
180 limm t3, dsz, dataSize=8
181 sll t3, t3, 3, dataSize=8
181 slli t3, t3, 3, dataSize=8
182 # Get the selector into t1.
183 sll t1, t2, t3, dataSize=8
184 mov t1, t0, t1, dataSize=2
185 # And get the offset into t2
186 mov t2, t0, t2
187 slli t3, t3, 4, dataSize=8
188 wrsel cs, t1, dataSize=2
189 wrbase cs, t3
190 wrip t0, t2, dataSize=asz
191};
192'''
182 # Get the selector into t1.
183 sll t1, t2, t3, dataSize=8
184 mov t1, t0, t1, dataSize=2
185 # And get the offset into t2
186 mov t2, t0, t2
187 slli t3, t3, 4, dataSize=8
188 wrsel cs, t1, dataSize=2
189 wrbase cs, t3
190 wrip t0, t2, dataSize=asz
191};
192'''