diff options
author | Doug Evans <dje@google.com> | 1998-02-27 18:10:03 +0000 |
---|---|---|
committer | Doug Evans <dje@google.com> | 1998-02-27 18:10:03 +0000 |
commit | 1fb06680cf9c075e0d493f7ab57af948d52da74b (patch) | |
tree | a5a766aea9e86ad121a48a1083fa552b9fcb7261 /gas | |
parent | b6f63b41bf129d5411da2aaef4c8c4eaf2a3857d (diff) | |
download | gdb-1fb06680cf9c075e0d493f7ab57af948d52da74b.zip gdb-1fb06680cf9c075e0d493f7ab57af948d52da74b.tar.gz gdb-1fb06680cf9c075e0d493f7ab57af948d52da74b.tar.bz2 |
* config/tc-dvp.c (assemble_vif): Insert cpu type marker before
inserted binary files.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 7 | ||||
-rw-r--r-- | gas/config/tc-dvp.c | 26 |
2 files changed, 28 insertions, 5 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 778329c..29b13d8 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +start-sanitize-sky +Fri Feb 27 10:06:59 1998 Doug Evans <devans@canuck.cygnus.com> + + * config/tc-dvp.c (assemble_vif): Insert cpu type marker before + inserted binary files. + +end-sanitize-sky start-sanitize-phase2-m32rx Wed Feb 25 11:43:45 1998 Doug Evans <devans@canuck.cygnus.com> diff --git a/gas/config/tc-dvp.c b/gas/config/tc-dvp.c index c3804c6..9c2e4cd 100644 --- a/gas/config/tc-dvp.c +++ b/gas/config/tc-dvp.c @@ -453,8 +453,8 @@ assemble_vif (str) frag_align (3, 0, 0); record_alignment (now_seg, 3); /* FIXME: The data must be aligned on a 64 bit boundary. - Not sure how to do this yet so punt by making the mpg insn - 8 bytes (vifnop,mpg). */ + Not sure how to do this yet, other than by performing relaxing, + so punt by making the mpg insn 8 bytes (vifnop,mpg). */ f = frag_more (4); memset (f, 0, 4); } @@ -516,11 +516,27 @@ assemble_vif (str) vif_get_var_data (&file, &data_len); if (file) { - int byte_len = insert_file (file); + int byte_len; + + /* Emit a label to set the mach type for the data we're + inserting. */ + if (opcode->flags & VIF_OPCODE_MPG) + record_mach (DVP_VUUP, 1); + else if (opcode->flags & VIF_OPCODE_DIRECT) + record_mach (DVP_GIF, 1); + else if (opcode->flags & VIF_OPCODE_UNPACK) + ; /* nothing to do */ + else + as_fatal ("unknown cpu type for variable length vif insn"); + + byte_len = insert_file (file); if (output_vif) install_vif_length (f, byte_len); - /* Update $.MpgLoc. */ - vif_set_mpgloc (vif_get_mpgloc () + byte_len); + if (opcode->flags & VIF_OPCODE_MPG) + { + /* Update $.MpgLoc. */ + vif_set_mpgloc (vif_get_mpgloc () + byte_len); + } } else { |