return pp_send();
}
+PP(pp_semop)
+{
+ return pp_shmwrite();
+}
+
U8 *
Perl_uvuni_to_utf8(pTHX_ U8 *d, UV uv)
{
MEMBER_TO_FPTR(Perl_pp_shmwrite), /* Perl_pp_msgrcv */
MEMBER_TO_FPTR(Perl_pp_semget),
MEMBER_TO_FPTR(Perl_pp_semctl),
- MEMBER_TO_FPTR(Perl_pp_semop),
+ MEMBER_TO_FPTR(Perl_pp_shmwrite), /* Perl_pp_semop */
MEMBER_TO_FPTR(Perl_pp_require),
MEMBER_TO_FPTR(Perl_pp_require), /* Perl_pp_dofile */
MEMBER_TO_FPTR(Perl_pp_entereval),
Perl_pp_gmtime => ['localtime'],
Perl_pp_semget => [qw(shmget msgget)],
Perl_pp_semctl => [qw(shmctl msgctl)],
- Perl_pp_shmwrite => ['shmread'],
Perl_pp_ghostent => [qw(ghbyname ghbyaddr)],
Perl_pp_gnetent => [qw(gnbyname gnbyaddr)],
Perl_pp_gprotoent => [qw(gpbyname gpbynumber)],
Perl_pp_link => ['symlink'],
Perl_pp_ftrread => [qw(ftrwrite ftrexec fteread ftewrite
fteexec)],
- Perl_pp_shmwrite => [qw(msgsnd msgrcv)],
+ Perl_pp_shmwrite => [qw(shmread msgsnd msgrcv semop)],
Perl_pp_send => ['syswrite'],
);
case OP_MSGRCV:
value = (I32)(do_msgrcv(MARK, SP) >= 0);
break;
+ case OP_SEMOP:
+ value = (I32)(do_semop(MARK, SP) >= 0);
+ break;
default:
value = (I32)(do_shmio(op_type, MARK, SP) >= 0);
break;
#endif
}
-PP(pp_semop)
-{
-#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
- dSP; dMARK; dTARGET;
- I32 value = (I32)(do_semop(MARK, SP) >= 0);
- SP = MARK;
- PUSHi(value);
- RETURN;
-#else
- return pp_semget();
-#endif
-}
-
/* Get system info. */
PP(pp_ghostent)