[llvm-commits] [llvm] r91973 - /llvm/trunk/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h

Sean Callanan scallanan at apple.com
Tue Dec 22 17:32:29 PST 2009


Author: spyffe
Date: Tue Dec 22 19:32:29 2009
New Revision: 91973

URL: http://llvm.org/viewvc/llvm-project?rev=91973&view=rev
Log:
More fixes for Visual C++.  Replaced several very small
static inline functions with macros.

Modified:
    llvm/trunk/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h

Modified: llvm/trunk/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h?rev=91973&r1=91972&r2=91973&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h (original)
+++ llvm/trunk/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h Tue Dec 22 19:32:29 2009
@@ -34,16 +34,16 @@
 /*
  * Accessor functions for various fields of an Intel instruction
  */
-static inline uint8_t modFromModRM(uint8_t modRM){ return (modRM & 0xc0) >> 6; }
-static inline uint8_t regFromModRM(uint8_t modRM){ return (modRM & 0x38) >> 3; }
-static inline uint8_t rmFromModRM(uint8_t modRM) { return (modRM & 0x7);       }
-static inline uint8_t scaleFromSIB(uint8_t sib)  { return (sib & 0xc0) >> 6;   }
-static inline uint8_t indexFromSIB(uint8_t sib)  { return (sib & 0x38) >> 3;   }
-static inline uint8_t baseFromSIB(uint8_t sib)   { return (sib & 0x7);         }
-static inline uint8_t wFromREX(uint8_t rex)      { return (rex & 0x8) >> 3;    }
-static inline uint8_t rFromREX(uint8_t rex)      { return (rex & 0x4) >> 2;    }
-static inline uint8_t xFromREX(uint8_t rex)      { return (rex & 0x2) >> 1;    }
-static inline uint8_t bFromREX(uint8_t rex)      { return (rex & 0x1);         }
+#define modFromModRM(modRM)  ((modRM & 0xc0) >> 6)
+#define regFromModRM(modRM)  ((modRM & 0x38) >> 3)
+#define rmFromModRM(modRM)   (modRM & 0x7)
+#define scaleFromSIB(sib)    ((sib & 0xc0) >> 6)
+#define indexFromSIB(sib)    ((sib & 0x38) >> 3)
+#define baseFromSIB(sib)     (sib & 0x7)
+#define wFromREX(rex)        ((rex & 0x8) >> 3)
+#define rFromREX(rex)        ((rex & 0x4) >> 2)
+#define xFromREX(rex)        ((rex & 0x2) >> 1)
+#define bFromREX(rex)        (rex & 0x1)
 
 /*
  * These enums represent Intel registers for use by the decoder.





More information about the llvm-commits mailing list