move_string.py (5112:fccb2f791196) move_string.py (5125:62bd932bcb0b)
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

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

77
78topOfLoop:
79 ld t1, seg, [1, t0, rsi]
80 st t1, es, [1, t0, rdi]
81
82 subi rcx, rcx, 1, flags=(EZF,), dataSize=asz
83 add rdi, rdi, t3, dataSize=asz
84 add rsi, rsi, t3, dataSize=asz
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

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

77
78topOfLoop:
79 ld t1, seg, [1, t0, rsi]
80 st t1, es, [1, t0, rdi]
81
82 subi rcx, rcx, 1, flags=(EZF,), dataSize=asz
83 add rdi, rdi, t3, dataSize=asz
84 add rsi, rsi, t3, dataSize=asz
85 bri t0, label("topOfLoop"), flags=(CSTRZnEZF,)
85 bri t0, label("topOfLoop"), flags=(nCEZF,)
86 fault "NoFault"
87};
86 fault "NoFault"
87};
88
89def macroop MOVS_N_M_M {
90 # Find the constant we need to either add or subtract from rdi
91 ruflag t0, 10
92 movi t3, t3, dsz, flags=(CEZF,), dataSize=asz
93 subi t4, t0, dsz, dataSize=asz
94 mov t3, t3, t4, flags=(nCEZF,), dataSize=asz
95
96topOfLoop:
97 ld t1, seg, [1, t0, rsi]
98 st t1, es, [1, t0, rdi]
99
100 subi rcx, rcx, 1, flags=(EZF,), dataSize=asz
101 add rdi, rdi, t3, dataSize=asz
102 add rsi, rsi, t3, dataSize=asz
103 bri t0, label("topOfLoop"), flags=(CSTRnZnEZF,)
104 fault "NoFault"
105};
106'''
88'''