From 1fb06680cf9c075e0d493f7ab57af948d52da74b Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Fri, 27 Feb 1998 18:10:03 +0000 Subject: [PATCH] * config/tc-dvp.c (assemble_vif): Insert cpu type marker before inserted binary files. --- gas/ChangeLog | 7 +++++++ gas/config/tc-dvp.c | 26 +++++++++++++++++++++----- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 778329cea6b..29b13d8b408 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +start-sanitize-sky +Fri Feb 27 10:06:59 1998 Doug Evans + + * 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 diff --git a/gas/config/tc-dvp.c b/gas/config/tc-dvp.c index c3804c6fe15..9c2e4cdc92f 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 { -- 2.30.2