gdb/tui: Link source and assembler scrolling .... again
[deliverable/binutils-gdb.git] / sim / common / sim-alu.h
index 1145141a0d0cb0d177ac1757e7c7744316cf43f5..9836c6f07accd358bdef0c2bd6f2755d07a1e989 100644 (file)
@@ -1,6 +1,6 @@
 /* The common simulator framework for GDB, the GNU Debugger.
 
-   Copyright 2002, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+   Copyright 2002-2020 Free Software Foundation, Inc.
 
    Contributed by Andrew Cagney and Red Hat.
 
@@ -20,8 +20,8 @@
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-#ifndef _SIM_ALU_H_
-#define _SIM_ALU_H_
+#ifndef SIM_ALU_H
+#define SIM_ALU_H
 
 #include "symcat.h"
 
@@ -82,7 +82,7 @@
                if (ALU16_HAD_OVERFLOW) \
                  sim_engine_halt (...); \
                (RES) = ALU16_OVERFLOW_RESULT
-   
+
        ALU*_HAD_CARRY_BORROW: Returns a nonzero value if unsigned
        overflow or underflow (also referred to as carry and borrow)
        occurred.
@@ -93,8 +93,8 @@
                #define ALU64_END(RES) \
                State.carry = ALU64_HAD_CARRY_BORROW; \
                (RES) = ALU64_CARRY_BORROW_RESULT
-   
-   
+
+
    Addition:
 
        ALU*_ADD(VAL): Add VAL to the ALU accumulator.  Record any
 /* Twos complement arithmetic - addition/subtraction - carry/borrow
    (or you thought you knew the answer to 0-0)
 
-   
+
 
    Notation and Properties:
 
    UMAXn: The upper bound of an unsigned N bit value (the lower
    bound is always zero).
 
-   Un: UMAXn + 1.  Unsigned arithmetic is computed `modulo (Un)'.  
+   Un: UMAXn + 1.  Unsigned arithmetic is computed `modulo (Un)'.
 
    X[p]: Is bit P of X.  X[0] denotes the least significant bit.
 
    The two N bit operands are sign extended to M>N bits and then
    added.  Overflow occurs when SIGN_BIT<n> and SIGN_BIT<m> do not
    match.
-  
+
                Rm = (SEXTn (Xn) + SEXTn (Yn))
                V = MSBn ((Rm >> (M - N)) ^ Rm)
 
 
    The following table lists the output for all given inputs into a
    full-adder.
-  
+
          I  X  Y  R | C
         ------------+---
          0  0  0  0 | 0
 
        XY\R  0  1
           +-------
-       00 |  0  0 
+       00 |  0  0
        01 |  1  0
        11 |  1  1
        10 |  1  0
 
    Verifying:
 
-         I  X  Y  R | C | X&Y  X&~R Y&~R 
+         I  X  Y  R | C | X&Y  X&~R Y&~R
         ------------+---+---------------
          0  0  0  0 | 0 |  0    0    0
          0  0  1  1 | 0 |  0    0    0
@@ -1007,14 +1007,14 @@ do {                                                                    \
 #define ALU32_AND(VAL)                                                 \
 do {                                                                   \
   alu32_r &= (VAL);                                                    \
-  alu32_r = 0;                                                         \
+  alu32_c = 0;                                                         \
   alu32_v = 0;                                                         \
 } while (0)
 
 #define ALU64_AND(VAL)                                                 \
 do {                                                                   \
   alu64_r &= (VAL);                                                    \
-  alu64_r = 0;                                                         \
+  alu64_c = 0;                                                         \
   alu64_v = 0;                                                         \
 } while (0)
 
This page took 0.024719 seconds and 4 git commands to generate.