xref: /xnu-10002.61.3/bsd/dev/dtrace/dtrace_xoroshiro128_plus.h (revision 0f4c859e951fba394238ab619495c4e1d54d0f34)
1*0f4c859eSApple OSS Distributions /*-
2*0f4c859eSApple OSS Distributions  * Copyright (c) 2016 (Graeme Jenkinson)
3*0f4c859eSApple OSS Distributions  * All rights reserved.
4*0f4c859eSApple OSS Distributions  *
5*0f4c859eSApple OSS Distributions  * This software was developed by BAE Systems, the University of Cambridge
6*0f4c859eSApple OSS Distributions  * Computer Laboratory, and Memorial University under DARPA/AFRL contract
7*0f4c859eSApple OSS Distributions  * FA8650-15-C-7558 ("CADETS"), as part of the DARPA Transparent Computing
8*0f4c859eSApple OSS Distributions  * (TC) research program.
9*0f4c859eSApple OSS Distributions  *
10*0f4c859eSApple OSS Distributions  * Redistribution and use in source and binary forms, with or without
11*0f4c859eSApple OSS Distributions  * modification, are permitted provided that the following conditions
12*0f4c859eSApple OSS Distributions  * are met:
13*0f4c859eSApple OSS Distributions  * 1. Redistributions of source code must retain the above copyright
14*0f4c859eSApple OSS Distributions  *    notice, this list of conditions and the following disclaimer.
15*0f4c859eSApple OSS Distributions  * 2. Redistributions in binary form must reproduce the above copyright
16*0f4c859eSApple OSS Distributions  *    notice, this list of conditions and the following disclaimer in the
17*0f4c859eSApple OSS Distributions  *    documentation and/or other materials provided with the distribution.
18*0f4c859eSApple OSS Distributions  *
19*0f4c859eSApple OSS Distributions  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
20*0f4c859eSApple OSS Distributions  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21*0f4c859eSApple OSS Distributions  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22*0f4c859eSApple OSS Distributions  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
23*0f4c859eSApple OSS Distributions  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24*0f4c859eSApple OSS Distributions  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25*0f4c859eSApple OSS Distributions  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26*0f4c859eSApple OSS Distributions  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27*0f4c859eSApple OSS Distributions  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28*0f4c859eSApple OSS Distributions  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29*0f4c859eSApple OSS Distributions  * SUCH DAMAGE.
30*0f4c859eSApple OSS Distributions  *
31*0f4c859eSApple OSS Distributions  */
32*0f4c859eSApple OSS Distributions 
33*0f4c859eSApple OSS Distributions #ifndef _DTRACE_XOROSHIRO128_PLUS_H
34*0f4c859eSApple OSS Distributions #define _DTRACE_XOROSHIRO128_PLUS_H
35*0f4c859eSApple OSS Distributions 
36*0f4c859eSApple OSS Distributions #include <sys/types.h>
37*0f4c859eSApple OSS Distributions #include <stdint.h>
38*0f4c859eSApple OSS Distributions 
39*0f4c859eSApple OSS Distributions void dtrace_xoroshiro128_plus_jump(uint64_t * const, uint64_t * const);
40*0f4c859eSApple OSS Distributions uint64_t dtrace_xoroshiro128_plus_next(uint64_t * const);
41*0f4c859eSApple OSS Distributions 
42*0f4c859eSApple OSS Distributions #endif
43