================
@@ -348,6 +348,20 @@ static inline unsigned long _inpd(unsigned short port) {
return ret;
}
+static inline int _outp(unsigned short port, int data) {
----------------
MalaySanghi wrote:
There's 2 differences between _outp and __outbyte.
First, the newer intrinsics don't return a value.
Second, __outbyte signature is
```
void __outbyte(
unsigned short Port,
unsigned char Data
);
```
Note that the second input is unsigned char instead of int. This is likely
because _outp is supposed to write a byte.
Other than that, I have verified that renaming to __outbyte works and is
functionally equivalent.
When lowered via microsoft's cl, the asm is identical.
https://github.com/llvm/llvm-project/pull/93774
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits