stack_operations.py (5179:9ea5593e01f2) stack_operations.py (5239:0920dfb94514)
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

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

157};
158
159def macroop ENTER_I_I {
160 # This needs to check all the addresses it writes to before it actually
161 # writes any values.
162
163 # Pull the different components out of the immediate
164 limm t1, imm
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

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

157};
158
159def macroop ENTER_I_I {
160 # This needs to check all the addresses it writes to before it actually
161 # writes any values.
162
163 # Pull the different components out of the immediate
164 limm t1, imm
165 zext t2, t1, 16, dataSize=2
165 zexti t2, t1, 15, dataSize=2
166 srl t1, t1, 16
166 srl t1, t1, 16
167 zext t1, t1, 6
167 zexti t1, t1, 5
168 # t1 is now the masked nesting level, and t2 is the amount of storage.
169
170 # Push rbp.
171 stupd rbp, ss, [1, t0, rsp], "-env.dataSize"
172
173 # Save the stack pointer for later
174 mov t6, t6, rsp
175

--- 27 unchanged lines hidden ---
168 # t1 is now the masked nesting level, and t2 is the amount of storage.
169
170 # Push rbp.
171 stupd rbp, ss, [1, t0, rsp], "-env.dataSize"
172
173 # Save the stack pointer for later
174 mov t6, t6, rsp
175

--- 27 unchanged lines hidden ---