summaryrefslogtreecommitdiffstats
path: root/all_pairs/source/epic
diff options
context:
space:
mode:
authorJoshua Bakita <bakitajoshua@gmail.com>2019-10-07 19:13:39 -0400
committerJoshua Bakita <bakitajoshua@gmail.com>2019-10-07 19:13:39 -0400
commit386b7d3366f1359a265da207a9cafa3edf553b64 (patch)
treec76120c2c138faed822e4ae386be6ef22a738a78 /all_pairs/source/epic
parent54a3f7091a2146b29c73a6fdc4b62a5c4ad7a3d8 (diff)
Reorganize and commit all the modified TACLeBench code and run scripts
Diffstat (limited to 'all_pairs/source/epic')
-rw-r--r--all_pairs/source/epic/ChangeLog.txt56
-rw-r--r--all_pairs/source/epic/epic.c1141
-rw-r--r--all_pairs/source/epic/epic.h72
3 files changed, 1269 insertions, 0 deletions
diff --git a/all_pairs/source/epic/ChangeLog.txt b/all_pairs/source/epic/ChangeLog.txt
new file mode 100644
index 0000000..5aad4f5
--- /dev/null
+++ b/all_pairs/source/epic/ChangeLog.txt
@@ -0,0 +1,56 @@
1Files: epic.c epic_data.h epic_data.c
2Original provenience: MediaBench benchmark suite,
3 http://euler.slu.edu/~fritts/mediabench/mb1/index.html
4
52016-02-03:
6- Added TACLeBench header, also kept original copyright notice
7- Removed commented-out code
8- Removed seemingly unnecessary empty lines
9- Removed unused function, variable, macro and type declarations except where
10 they may help understanding the program.
11- Slightly changed wording of original comments to keep them in line with the
12 modified/removed code parts.
13- Separated epic.c to epic.c and epic.h
14- Added proper '#ifndef __EPIC_DATA_H_' and friends to epic_data.h
15- Moved around all the following so that they are in the given order just after
16the header
17 - macro definitions
18 - forward declaration of functions
19 - declaration of global variables
20- Added a new main function that first calls init function then the old main
21 function sans init
22- Annotated epic_main() as the entry point of the analysis
23- Applied code formatting according to the following rules
24 - Lines shall not be wider than 80 characters; whenever possible, appropriate
25 line breaks shall be inserted to keep lines below 80 characters
26 - Indentation is done using whitespaces only, no tabs. Code is indented by
27 two whitespaces
28 - Two empty lines are put between any two functions
29 - In non-empty lists or index expressions, opening '(' and '[' are followed by
30 one whitespace, closing ')' and ']' are preceded by one whitespace
31 - In comma- or colon-separated argument lists, one whitespace is put after
32 each comma/colon
33 - Names of functions and global variables all start with a benchmark-specific
34 prefix (here: epic_) followed by lowercase letter
35 - For pointer types, one whitespace is put before the '*'
36 - Operators within expressions shall be preceded and followed by one
37 whitespace
38 - Code of then- and else-parts of if-then-else statements shall be put in
39 separate lines, not in the same lines as the if-condition or the keyword
40 "else"
41 - Opening braces '{' denoting the beginning of code for some if-else or loop
42 body shall be put at the end of the same line where the keywords "if",
43 "else", "for", "while" etc. occur
44
452016-10-10:
46- removed unused parameter 'char *edges' in epic_internal_filter()
47- included input data definition in epic.c, and removed epic_data.c and epic_data.h
48
492016-10-12:
50- added initial value to variable 'rt_edge_res_pos' (in case the first for loop
51at line 775) is not executed)
52- added initial value to variable 'first_col' (in case the first for loop
53at line 775) is not executed)
54
552016-10_14:
56- added epic_return() function
diff --git a/all_pairs/source/epic/epic.c b/all_pairs/source/epic/epic.c
new file mode 100644
index 0000000..13ba442
--- /dev/null
+++ b/all_pairs/source/epic/epic.c
@@ -0,0 +1,1141 @@
1/*
2
3 This program is part of the TACLeBench benchmark suite.
4 Version V 2.0
5
6 Name: epic
7
8 Author: Designed by Eero P. Simoncelli and Edward H. Adelson
9 Written by Eero P. Simoncelli
10 Developed at the Vision Science Group, The Media Laboratory
11 Copyright 1989, Massachusetts Institute of Technology
12 All rights reserved.
13
14 Function: Efficient Pyramid Image Coder
15
16 Source: MediaBench
17
18
19 Original name: epic
20
21 Changes: no major functional changes
22
23 License:
24 Permission to use, copy, or modify this software and its documentation
25 for educational and research purposes only and without fee is hereby
26 granted, provided that this copyright notice appear on all copies and
27 supporting documentation. For any other uses of this software, in
28 original or modified form, including but not limited to distribution
29 in whole or in part, specific prior permission must be obtained from
30 M.I.T. and the authors. These programs shall not be used, rewritten,
31 or adapted as the basis of a commercial software or hardware product
32 without first obtaining appropriate licenses from M.I.T. M.I.T. makes
33 no representations about the suitability of this software for any
34 purpose. It is provided "as is" without express or implied warranty.
35*/
36
37
38#include "../extra.h"
39#include "epic.h"
40
41#define X_SIZE 64
42#define Y_SIZE 64
43
44float epic_image[] = {
45 0x89, 0x88, 0x87, 0x86, 0x89, 0x87, 0x84, 0x86,
46 0x83, 0x89, 0x82, 0x83, 0x84, 0x81, 0x80, 0x80,
47 0x81, 0x83, 0x88, 0x8A, 0x8E, 0x90, 0x96, 0x98,
48 0x95, 0x92, 0x93, 0x88, 0x78, 0x7B, 0x60, 0x52,
49 0x41, 0x3F, 0x3A, 0x46, 0x46, 0x48, 0x49, 0x48,
50 0x4F, 0x4A, 0x49, 0x50, 0x4C, 0x4B, 0x4D, 0x4C,
51 0x4E, 0x4E, 0x4A, 0x49, 0x4D, 0x54, 0x50, 0x59,
52 0x51, 0x5A, 0x5E, 0x5A, 0x5D, 0x61, 0x59, 0x65,
53 0x63, 0x65, 0x60, 0x62, 0x68, 0x67, 0x64, 0x61,
54 0x64, 0x5E, 0x66, 0x63, 0x63, 0x61, 0x67, 0x68,
55 0x62, 0x64, 0x66, 0x67, 0x64, 0x63, 0x66, 0x64,
56 0x67, 0x66, 0x65, 0x64, 0x64, 0x6A, 0x66, 0x65,
57 0x68, 0x66, 0x69, 0x67, 0x6A, 0x66, 0x68, 0x66,
58 0x6C, 0x65, 0x69, 0x64, 0x65, 0x64, 0x66, 0x62,
59 0x63, 0x68, 0x68, 0x65, 0x64, 0x64, 0x62, 0x63,
60 0x68, 0x65, 0x66, 0x69, 0x66, 0x65, 0x61, 0x66,
61 0x6E, 0x69, 0x64, 0x61, 0x63, 0x63, 0x66, 0x63,
62 0x62, 0x64, 0x60, 0x68, 0x63, 0x61, 0x62, 0x65,
63 0x60, 0x63, 0x60, 0x62, 0x60, 0x5E, 0x61, 0x62,
64 0x5D, 0x5C, 0x57, 0x5B, 0x58, 0x53, 0x54, 0x47,
65 0x49, 0x54, 0x5C, 0x6B, 0x6F, 0x77, 0x7F, 0x80,
66 0x88, 0x8A, 0x8C, 0x85, 0x7A, 0x7D, 0x7F, 0x7D,
67 0x80, 0x80, 0x81, 0x80, 0x85, 0x82, 0x81, 0x7E,
68 0x80, 0x7F, 0x7F, 0x7E, 0x7D, 0x7E, 0x83, 0x7F,
69 0x81, 0x83, 0x87, 0x82, 0x83, 0x88, 0x84, 0x82,
70 0x82, 0x8A, 0xB3, 0xC5, 0xCD, 0xCF, 0xD4, 0xD3,
71 0xD6, 0xCC, 0xB5, 0x80, 0x4E, 0x48, 0x4D, 0x4D,
72 0x57, 0x5A, 0x59, 0x5C, 0x62, 0x58, 0x5C, 0x5B,
73 0x5B, 0x62, 0x5D, 0x5C, 0x59, 0x5C, 0x5A, 0x59,
74 0x5D, 0x5F, 0x5B, 0x5F, 0x60, 0x5E, 0x5E, 0x57,
75 0x5F, 0x5F, 0x60, 0x61, 0x5C, 0x61, 0x60, 0x5B,
76 0x56, 0x56, 0x57, 0x58, 0x6E, 0x91, 0x96, 0x7E,
77 0x89, 0x88, 0x87, 0x86, 0x8A, 0x87, 0x84, 0x87,
78 0x83, 0x89, 0x82, 0x83, 0x84, 0x81, 0x80, 0x80,
79 0x81, 0x83, 0x88, 0x8A, 0x8E, 0x90, 0x96, 0x98,
80 0x94, 0x93, 0x93, 0x88, 0x78, 0x7B, 0x60, 0x52,
81 0x41, 0x3F, 0x39, 0x46, 0x46, 0x48, 0x49, 0x47,
82 0x50, 0x4A, 0x49, 0x50, 0x4D, 0x4B, 0x4D, 0x4C,
83 0x4E, 0x4E, 0x4A, 0x49, 0x4E, 0x54, 0x4F, 0x59,
84 0x51, 0x5A, 0x5E, 0x5A, 0x5D, 0x61, 0x59, 0x65,
85 0x63, 0x65, 0x5F, 0x62, 0x68, 0x67, 0x64, 0x61,
86 0x64, 0x5E, 0x66, 0x63, 0x63, 0x61, 0x67, 0x69,
87 0x61, 0x63, 0x66, 0x67, 0x65, 0x63, 0x66, 0x64,
88 0x67, 0x67, 0x65, 0x64, 0x64, 0x6A, 0x66, 0x65,
89 0x68, 0x66, 0x69, 0x67, 0x6A, 0x67, 0x69, 0x66,
90 0x6C, 0x65, 0x69, 0x64, 0x65, 0x64, 0x66, 0x62,
91 0x63, 0x68, 0x68, 0x66, 0x64, 0x64, 0x62, 0x63,
92 0x68, 0x65, 0x66, 0x6A, 0x67, 0x65, 0x60, 0x66,
93 0x6F, 0x6A, 0x64, 0x61, 0x64, 0x63, 0x66, 0x63,
94 0x62, 0x64, 0x60, 0x69, 0x64, 0x61, 0x62, 0x65,
95 0x60, 0x63, 0x60, 0x62, 0x60, 0x5E, 0x61, 0x62,
96 0x5D, 0x5C, 0x57, 0x5B, 0x59, 0x53, 0x54, 0x47,
97 0x49, 0x54, 0x5C, 0x6B, 0x6F, 0x77, 0x7F, 0x80,
98 0x88, 0x8A, 0x8C, 0x85, 0x7A, 0x7D, 0x7F, 0x7C,
99 0x80, 0x80, 0x81, 0x80, 0x85, 0x82, 0x81, 0x7E,
100 0x80, 0x7F, 0x7F, 0x7E, 0x7D, 0x7E, 0x83, 0x7F,
101 0x81, 0x83, 0x87, 0x81, 0x83, 0x88, 0x84, 0x82,
102 0x82, 0x8A, 0xB5, 0xC5, 0xCD, 0xCF, 0xD4, 0xD3,
103 0xD6, 0xCC, 0xB4, 0x7E, 0x4D, 0x48, 0x4E, 0x4D,
104 0x57, 0x5A, 0x59, 0x5C, 0x62, 0x58, 0x5C, 0x5B,
105 0x5B, 0x62, 0x5D, 0x5C, 0x59, 0x5C, 0x5A, 0x59,
106 0x5D, 0x5F, 0x5B, 0x5F, 0x60, 0x5E, 0x5E, 0x57,
107 0x5F, 0x5F, 0x60, 0x61, 0x5C, 0x61, 0x60, 0x5B,
108 0x56, 0x56, 0x57, 0x58, 0x6F, 0x94, 0x9A, 0x82,
109 0x88, 0x89, 0x87, 0x86, 0x88, 0x86, 0x84, 0x85,
110 0x82, 0x87, 0x82, 0x81, 0x83, 0x81, 0x7F, 0x80,
111 0x82, 0x82, 0x87, 0x8A, 0x8F, 0x90, 0x95, 0x98,
112 0x95, 0x92, 0x92, 0x88, 0x79, 0x77, 0x5F, 0x51,
113 0x41, 0x3E, 0x3B, 0x44, 0x44, 0x46, 0x49, 0x4A,
114 0x4C, 0x49, 0x49, 0x4E, 0x4A, 0x4A, 0x4E, 0x4A,
115 0x4D, 0x4D, 0x48, 0x4A, 0x4C, 0x52, 0x52, 0x58,
116 0x52, 0x59, 0x5E, 0x5A, 0x5D, 0x5F, 0x59, 0x64,
117 0x64, 0x64, 0x62, 0x61, 0x66, 0x66, 0x64, 0x60,
118 0x62, 0x5F, 0x65, 0x63, 0x62, 0x62, 0x65, 0x66,
119 0x62, 0x65, 0x67, 0x66, 0x64, 0x64, 0x65, 0x65,
120 0x66, 0x65, 0x65, 0x63, 0x63, 0x67, 0x65, 0x64,
121 0x67, 0x67, 0x68, 0x66, 0x6A, 0x66, 0x67, 0x66,
122 0x6C, 0x65, 0x6A, 0x64, 0x64, 0x63, 0x66, 0x62,
123 0x63, 0x67, 0x69, 0x65, 0x64, 0x63, 0x62, 0x63,
124 0x68, 0x65, 0x66, 0x69, 0x66, 0x65, 0x61, 0x65,
125 0x6C, 0x69, 0x64, 0x61, 0x62, 0x62, 0x64, 0x63,
126 0x61, 0x63, 0x60, 0x66, 0x63, 0x61, 0x62, 0x65,
127 0x60, 0x62, 0x60, 0x62, 0x60, 0x5E, 0x60, 0x61,
128 0x5C, 0x5C, 0x59, 0x5B, 0x57, 0x53, 0x52, 0x47,
129 0x48, 0x54, 0x5C, 0x69, 0x6E, 0x77, 0x7D, 0x80,
130 0x88, 0x89, 0x8C, 0x84, 0x7B, 0x7D, 0x7E, 0x7D,
131 0x7F, 0x80, 0x81, 0x7F, 0x85, 0x82, 0x80, 0x7E,
132