[clang] [X86] Add support for MS inp functions. (PR #93804)
    Phoebe Wang via cfe-commits 
    cfe-commits at lists.llvm.org
       
    Thu May 30 07:19:28 PDT 2024
    
    
  
================
@@ -329,6 +329,28 @@ static __inline__ void __DEFAULT_FN_ATTRS __stosq(unsigned __int64 *__dst,
 static __inline__ void __DEFAULT_FN_ATTRS __halt(void) {
   __asm__ volatile("hlt");
 }
+
+static inline int _inp(unsigned short port) {
+  int ret;
+  __asm__ volatile("inb %b1, %b0" : "=a"(ret) : "Nd"(port));
+  return ret;
+}
+
+static inline unsigned short _inpw(unsigned short port) {
+  unsigned short ret;
+  __asm__ volatile("inb %w1, %b0" : "=a"(ret) : "Nd"(port));
----------------
phoebewang wrote:
You need `inw` here.
https://github.com/llvm/llvm-project/pull/93804
    
    
More information about the cfe-commits
mailing list