bugGNU MIX Development Kit - Bugs: bug #5652, Assembler shouldn't mask index...

 
 

bug #5652: Assembler shouldn't mask index field

Submitter:  Joel Ray Holveck <joelh>
Submitted:  Wed 01 Oct 2003 02:41:23 AM UTC
   
 
Category:  None Severity:  3 - Normal
Item Group:  None Status:  Fixed
Privacy:  Public Assigned to:  jao
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Sun 10 Oct 2010 12:03:18 AM UTC, comment #1: 

Sorry for the looooong delay. Fixed in Git and forthcoming 1.2.6 release.

Jose Antonio Ortega Ruiz <jao>
Group administrator
Wed 01 Oct 2003 02:41:23 AM UTC, original submission:  

The assembler, in mix_ins_to_word (and mix_ins_to_word_uncheck) presently truncates the index field to three bits.

As far as I can tell, this serves no useful purpose.  It doesn't restrict the index to valid index registers, since 7 is still passed.  It doesn't restrict input, since index register values > 7 are modified to other values (which are pretty much useless), rather than generating an error.  It isn't required to make a valid word, since an entire byte is available in the I field.

There's an old tradition on machines similar to the MIX (such as the PDP-4, IBM 360, etc) of holding data in unused portions of instructions, or (if you can wrangle it) used portions of instructions.  Or, if you don't have anything useful to store, then your initials.  ANDing the index field with 7 prevents this, and is unnecessary.

Joel Ray Holveck <joelh>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jao (Updated the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2010-10-10 jao StatusIn Progress Fixed
        Open/ClosedOpen Closed
    2010-04-12 jao Assigned toNone jao
    2010-04-12 jao StatusPostponed In Progress
    2005-09-19 jao StatusNone Postponed

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code