Changeset 08a994e
- Timestamp:
- May 5, 2020, 4:23:46 PM (5 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 4385e8b, c66f6cb
- Parents:
- d3ab183
- Location:
- libcfa
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified libcfa/configure ¶
rd3ab183 r08a994e 16962 16962 done 16963 16963 16964 for ac_func in preadv2 pwritev2 16965 do : 16966 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` 16967 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" 16968 if eval test \"x\$"$as_ac_var"\" = x"yes"; then : 16969 cat >>confdefs.h <<_ACEOF 16970 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 16971 _ACEOF 16972 16973 fi 16974 done 16975 16964 16976 16965 16977 ac_config_files="$ac_config_files Makefile src/Makefile prelude/Makefile" -
TabularUnified libcfa/configure.ac ¶
rd3ab183 r08a994e 119 119 120 120 AC_CHECK_HEADERS([linux/io_uring.h]) 121 AC_CHECK_FUNCS([preadv2 pwritev2]) 121 122 122 123 AC_CONFIG_FILES([ -
TabularUnified libcfa/prelude/defines.hfa.in ¶
rd3ab183 r08a994e 16 16 #undef HAVE_LINUX_IO_URING_H 17 17 18 #undef HAVE_PREADV2 19 #undef HAVE_PWRITEV2 20 18 21 // #define __CFA_IO_POLLING_USER__ 19 22 // #define __CFA_IO_POLLING_KERNEL__ -
TabularUnified libcfa/src/Makefile.in ¶
rd3ab183 r08a994e 241 241 containers/vector.hfa bitmanip.hfa math.hfa gmp.hfa time_t.hfa \ 242 242 bits/align.hfa bits/containers.hfa bits/defs.hfa \ 243 bits/debug.hfa bits/locks.hfa con currency/coroutine.hfa \244 concurrency/ thread.hfa concurrency/kernel.hfa \245 concurrency/ monitor.hfa concurrency/mutex.hfa \246 concurrency/ invoke.h243 bits/debug.hfa bits/locks.hfa containers/list.hfa \ 244 concurrency/coroutine.hfa concurrency/thread.hfa \ 245 concurrency/kernel.hfa concurrency/monitor.hfa \ 246 concurrency/mutex.hfa concurrency/invoke.h 247 247 HEADERS = $(nobase_cfa_include_HEADERS) 248 248 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) … … 463 463 464 464 #---------------------------------------------------------------------------------------------------------------- 465 @BUILDLIB_TRUE@headers_nosrc = bitmanip.hfa math.hfa gmp.hfa time_t.hfa bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa 465 @BUILDLIB_TRUE@headers_nosrc = bitmanip.hfa math.hfa gmp.hfa time_t.hfa bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa containers/list.hfa 466 466 @BUILDLIB_FALSE@headers = 467 467 @BUILDLIB_TRUE@headers = fstream.hfa iostream.hfa iterator.hfa limits.hfa rational.hfa time.hfa stdlib.hfa common.hfa \ -
TabularUnified libcfa/src/concurrency/io.cfa ¶
rd3ab183 r08a994e 544 544 #include <sys/socket.h> 545 545 #include <sys/syscall.h> 546 547 #if defined(HAVE_PREADV2) 546 548 struct iovec; 547 549 extern ssize_t preadv2 (int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags); 550 #endif 551 #if defined(HAVE_PWRITEV2) 552 struct iovec; 548 553 extern ssize_t pwritev2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags); 554 #endif 549 555 550 556 extern int fsync(int fd); … … 572 578 //----------------------------------------------------------------------------- 573 579 // Asynchronous operations 574 ssize_t cfa_preadv2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) { 575 #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_READV) 576 return preadv2(fd, iov, iovcnt, offset, flags); 577 #else 578 __submit_prelude 579 580 (*sqe){ IORING_OP_READV, fd, iov, iovcnt, offset }; 581 582 __submit_wait 583 #endif 584 } 585 586 ssize_t cfa_pwritev2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) { 587 #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_WRITEV) 588 return pwritev2(fd, iov, iovcnt, offset, flags); 589 #else 590 __submit_prelude 591 592 (*sqe){ IORING_OP_WRITEV, fd, iov, iovcnt, offset }; 593 594 __submit_wait 595 #endif 596 } 580 #if defined(HAVE_PREADV2) 581 ssize_t cfa_preadv2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) { 582 #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_READV) 583 return preadv2(fd, iov, iovcnt, offset, flags); 584 #else 585 __submit_prelude 586 587 (*sqe){ IORING_OP_READV, fd, iov, iovcnt, offset }; 588 589 __submit_wait 590 #endif 591 } 592 #endif 593 594 #if defined(HAVE_PWRITEV2) 595 ssize_t cfa_pwritev2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) { 596 #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_WRITEV) 597 return pwritev2(fd, iov, iovcnt, offset, flags); 598 #else 599 __submit_prelude 600 601 (*sqe){ IORING_OP_WRITEV, fd, iov, iovcnt, offset }; 602 603 __submit_wait 604 #endif 605 } 606 #endif 597 607 598 608 int cfa_fsync(int fd) { … … 822 832 return IS_DEFINED(IORING_OP_READV); 823 833 824 if( /*func == (fptr_t)pwritev2 || */ 825 func == (fptr_t)cfa_pwritev2 ) 826 #define _CFA_IO_FEATURE_IORING_OP_WRITEV , 827 return IS_DEFINED(IORING_OP_WRITEV); 828 829 if( /*func == (fptr_t)fsync || */ 830 func == (fptr_t)cfa_fsync ) 831 #define _CFA_IO_FEATURE_IORING_OP_FSYNC , 832 return IS_DEFINED(IORING_OP_FSYNC); 834 #if defined(HAVE_PREADV2) 835 if( /*func == (fptr_t)pwritev2 || */ 836 func == (fptr_t)cfa_pwritev2 ) 837 #define _CFA_IO_FEATURE_IORING_OP_WRITEV , 838 return IS_DEFINED(IORING_OP_WRITEV); 839 #endif 840 841 #if defined(HAVE_PWRITEV2) 842 if( /*func == (fptr_t)fsync || */ 843 func == (fptr_t)cfa_fsync ) 844 #define _CFA_IO_FEATURE_IORING_OP_FSYNC , 845 return IS_DEFINED(IORING_OP_FSYNC); 846 #endif 833 847 834 848 if( /*func == (fptr_t)ync_file_range || */
Note: See TracChangeset
for help on using the changeset viewer.