annotate interps/c-intercal/src/fiddle.h @ 996:859f9b4339e6

<Gregor> tar xf egobot.tar.xz
author HackBot
date Sun, 09 Dec 2012 19:30:08 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
996
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
1 /* fiddle.h -- functions implementing intercal's operators */
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
2
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
3 /*@-exportlocal@*/ /* these are used, just in generated code */
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
4 extern unsigned int ick_mingle(register unsigned int r, register unsigned int s);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
5 extern unsigned int ick_iselect(register unsigned int r, register unsigned int s);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
6 extern unsigned int ick_and16(unsigned int n), ick_or16(unsigned int n),
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
7 ick_xor16(unsigned int n), ick_fin16(unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
8 extern unsigned int ick_whirl16(unsigned int p, unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
9 extern unsigned int ick_and32(unsigned int n), ick_or32(unsigned int n),
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
10 ick_xor32(unsigned int n), ick_fin32(unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
11 extern unsigned int ick_whirl32(unsigned int p, unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
12 /* AIS: Reversed operators */
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
13 extern unsigned int ick_rev_and16(unsigned int n), ick_rev_or16(unsigned int n),
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
14 ick_rev_xor16(unsigned int n), ick_rev_fin16(unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
15 extern unsigned int ick_rev_whirl16(unsigned int p, unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
16 extern unsigned int ick_rev_and32(unsigned int n), ick_rev_or32(unsigned int n),
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
17 ick_rev_xor32(unsigned int n), ick_rev_fin32(unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
18 extern unsigned int ick_rev_whirl32(unsigned int p, unsigned int n);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
19 /* AIS: Optimizer helper operators */
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
20 extern unsigned int ick_xselx(unsigned int x);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
21 extern unsigned int ick_setbitcount(unsigned int x);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
22 extern unsigned int ick_smudgeleft(unsigned int x);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
23 extern unsigned int ick_smudgeright(unsigned int x);
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
24 /*@=exportlocal@*/
859f9b4339e6 <Gregor> tar xf egobot.tar.xz
HackBot
parents:
diff changeset
25 /* fiddle.h ends here */