; RUN: llvm-as < %s | llc -march=x86 | |
implementation | |
declare int %llvm.readport (ushort) | |
declare void %llvm.writeport (int, ushort) | |
int %in(ushort %p) { | |
%i1 = call int %llvm.readport (ushort 255) | |
%i2 = call int %llvm.readport (ushort %p) | |
%r = add int %i1, %i2 | |
ret int %r | |
} | |
void %out(ushort %p) { | |
call void(int, ushort)* %llvm.writeport (int 1, ushort 255) | |
call void(int, ushort)* %llvm.writeport (int 4, ushort %p) | |
ret void | |
} | |