mips

Mips - Is it important?

My question: Is the mips programming language that benificial to know? I'm a CS student and am taking a assembly class which focuses on Mips. I'm very comfortable writing in high level languages, but Mips has me a little bit down. Is Mips something that I should really focus on and try to completely grasp it? Will it help me in the f...

where can I find a description of *all* MIPS instructions,

Does anyone know of a web site where I can find a list of 32-bit MIPS instructions/opcodes, with the following features: Clearly distinguishes between real opcodes and assembly-language macros Describes the instruction behavior including differences depending on privilege level. Indicates in which instruction set revision the instructi...

gcc for MIPS, 3.4.4 or 4.3.2?

We've made a number of changes to gcc 3.3.2 (for MIPS) to support the vagaries of an embedded system we're working on. gcc 3.4 and later appear to have substantially improved the MIPS code generation, so I'm planning to port our changes forward. The question is which gcc version should I target: 3.4.4 or straight to 4.3.2? Its a substant...

LLVM vs GCC MIPS code generation, any benchmarks?

I'm interested in knowing what is "best" free/OSS compiler for MIPS code, GCC or LLVM, or is there anything even better than those? I'm interested in knowing more about fast and memory constrained generated Assembly code than code size. In other words, does llvm-opt do the job better than gcc -O3? ...

Pascal to Mips Code Conversion

I'm currently working on a Mips Code Generator for my Pascal Parser (Written in C using Lex / Yacc) . Does anybode know of a Tool out there I can use as a reference in order assure correct Code Generation? ...

What should I know when switching from MIPS to x86 assembly?

At school we have been programming in MIPS assembly language for some time. I'm interested into delving into x86 assembly and I have heard that is somewhat harder (even my MIPS textbook says this). What core information should I know as a MIPS programmer before making the dive into the x86 world? ...

How can I program MIPS assembly from x86 linux?

Are there any command line interpreters around for x86 linux inorder to run MIPS assembly programs? I'd like to be able to write simple MIPS assembly programs and run them from the console on my local machine. I know of SPIM but it requires X Windows and I'm curious if there are better options out there. Edit: Turns out it doesn't req...

C/C++ linker CALL16 reloc at xxxxx not against global symbol

I'm getting these errors while linking, both messages have to do with the same object file. CALL16 reloc at 0x5f8 not against global symbol and could not read symbols: Bad value The 2nd message seems to be the reason I'm getting the CALL16 error, but the file compiles just fine. Any tips on fixing this? FYI, I'm cross compiling f...

About Trees and Prefix (Polish) Notation?

My MIPS Assembly class required me to read in an expression of unknown size into a Parse Tree. I've never had to deal with trees, so this is how I went around storing values: Lets say the user entered the expression 1 + 3 - 4 (each operand could only be a digit 1-9) My leftmost child node would be the starting point and contain 2 piec...

Learning MIPS as a second assembly language?

Hello, I know x86 Assembly (and have worked with FPGA etc') , Never wrote for a RISC, I have the opportunity to take a course in MIPS, but I'm busy as it is, so my question is, I know that every thing I learn is beneficial in some way, but really, how much beneficial? (I am a low level enthusiastic, but is this a must?) (I'm aware of ...

How to calculate MIPS for an algorithm for ARM processor

I have been asked recently to produced the MIPS (million of instructions per second) for an algorithm we have developed. The algorithm is exposed by a set of C-style functions. We have exercise the code on a Dell Axim to benchmark the performance under different input. This question came from our hardware vendor, but I am mostly a HL so...

Are C++ int operations atomic on the mips architecture

I wonder if I could read or write shared int value without locking on mips cpu (especially Amazon or Danube). What I mean is if such a read or write are atomic (other thread can't interrupt them). To be clear - I don't want to prevent the race between threads, but I care if int value itself is not corrupted. Assuming that the compiler a...

MIPs Assembly Pig Latin

In my MIPs Assembly Programming class I've been tasked with writing a program that converts a string into simplified pig latin. Simplified pig latin assumes all words in the string are at least 2 characters long, and every word has its first letter shifted to the end followed by "ay". Also, assume there are no punctuation marks of any k...

Is it possible to use MIPS register names with GAS (GNU assembler)?

If I use register names I get: Error: illegal operands `add $t0,$zero,$zero' If I use register number ($8 instead of $t0 and $0 instead of $zero) it works. (I'm using binutils 2.17). ...

MIPS code broken

I'm working on some MIPS code for my Computer Organizations class, and well I just can't seem to get the MIPS to work correctly and there's not that many MIPS resources online. I'm running the code on PCSPIM. The code is supposed to add 10 to the contents of array2 and store them in array1 and then print array 1. Reworked the code works ...

How do I access the state of individual bits of a word in MIPS?

I'm writing a program and I need to determine if bits 3 and 6 are set. I know that I can rotate a word or left/right shift it. But how do I access individual bit's state? Do I use a bitwise operator like and/xor? ...

Is my MIPS program correct?

Write a MIPS program that generates and adds up all even numbers from 1 to 100. it must have at least one loop it should store the sum in register R12 And this is what I wrote: main: li $t0, 0 # clear register $t0 to zero li $t4, 0 # clear register $t4 to zero loop: add $t0, $t...

Anybody cross compiled Mono for MIPS 64 using uClibc?

I am trying to statically cross compile Mono for MIPS. I am able to compile Mono, but it is always dynamically linked with it's dependencies, even though I specify static to the compiler. I wrote a test program and I am able to statically compile it with my toolchain and run it on the target platform. I am not sure if I am missing som...

How to increment the address in MIPS assembly?

I am just starting to lean MIPS assembly, and I am trying to write a simple while loop. It will be equivilent to the C code: int A[5]; for(i=0;i<5;i++) A[i]=i; So I know I can use beq to make a while loop, but I don't know how to increment the memory address each time to go to the next register. I think maybe the slt operand may be us...

How can I sort a list of user-entered numbers in MIPS?

I'm writing MIPS program that will examine a list of 10 numbers to be input from the terminal. And these numbers will output on the terminal in an ascending order. And below are my MIPS program...please can someone help me look into it, because i m running and isn't working proply.... .data array: .space 40 prompt: .asciiz "En...