Update of /cvsroot/wisp/wisp/users/dig
In directory sc8-pr-cvs1:/tmp/cvs-serv18259
Modified Files:
elf.py
Log Message:
use cleaner syntax in elf.py
Index: elf.py
===================================================================
RCS file: /cvsroot/wisp/wisp/users/dig/elf.py,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- elf.py 27 Apr 2003 12:56:17 -0000 1.40
+++ elf.py 27 Apr 2003 12:58:08 -0000 1.41
@@ -338,10 +338,10 @@
h.emit_string('\0' * 9)
h.emit_wyde_sum(['#elf/type'])
h.emit_wyde_sum(['#elf/machine'])
- h.emit_tetra(EV.CURRENT)
+ h[::4] = EV.CURRENT
if reloc:
- h.emit_tetra(0) # no &_start
- h.emit_tetra(0) # no !elf/proghdr
+ h[::4] = 0 # no &_start
+ h[::4] = 0 # no !elf/proghdr
else:
h.emit_tetra_sum(['&_start'])
h.emit_tetra_sum(['!elf/proghdr'])
@@ -380,7 +380,7 @@
t.emit_tetra_sum(['#.shstrtab/strings/' + name])
t.emit_tetra_sum(['#' + name + '/sh_type'])
t.emit_tetra_sum(['#' + name + '/sh_flags'])
- if zero_addresses: t.emit_tetra(0)
+ if zero_addresses: t[::4] = 0
else: t.emit_tetra_sum(['&' + name])
t.emit_tetra_sum(['!' + name])
t.emit_tetra_sum(['#' + name + '/sh_size'])
@@ -420,10 +420,10 @@
ofs = this._strtab.emit_entry(pname[1:])
# No explicit alignment. .symtab doesn't bear padding; if
# you get it out of align, you're out of luck anyway.
- this.emit_tetra(ofs)
+ this[::4] = ofs
if value == None: this.emit_tetra_sum([pname])
- else: this.emit_tetra(value)
- this.emit_tetra(0) # st_size
+ else: this[::4] = value
+ this[::4] = 0 # st_size
this[::1] = STB.GLOBAL << 4 | STT.NOTYPE
this[::1] = 0 # st_other; reserved
this[::2] = section
@@ -437,9 +437,8 @@
i = symtab.emit_entry(pname, value = 0, section = SHN.UNDEF)
# No explicit alignment. .rel* don't bear padding; if
# you get it out of align, you're out of luck anyway.
- rel.emit_tetra(offset)
- rel.emit_tetra((i << 8) | type)
- if addend <> None: rel.emit_tetra(addend)
+ rel[::4] = offset, (i << 8) | type
+ if addend <> None: rel[::4] = addend
def infer_by_prefix (name, dict):
for l in range(len(name), -1, -1):
|