Lines Matching full:bundle
34 extract_bit_field(char *bundle, int from, int len) {
39 unsigned char *b = (unsigned char *)bundle;
64 /* Replace the specified bits in an instruction bundle */
66 replace_bit_field(char *bundle, long long val, int from, int len) {
70 unsigned char *b = (unsigned char *)bundle;
110 and instruction bundle */
112 slotN_contents(char *bundle, int slotnum) {
113 return extract_bit_field(bundle, 5 + 41 * slotnum, 41);
116 /* Store an instruction in an instruction bundle */
119 replace_slotN_contents(char *bundle, long long instr, int slotnum) {
120 replace_bit_field(bundle, instr, 5 + 41 * slotnum, 41);
179 union bundle_t bundle;
189 bundle.ubundle[0] = ptrace(PTRACE_PEEKTEXT, pid, addr, 0);
190 bundle.ubundle[1] = ptrace(PTRACE_PEEKTEXT, pid, addr + 8, 0);
194 template = extract_bit_field(bundle.cbundle, 0, 5);
199 instr = slotN_contents(bundle.cbundle, slotnum);
203 replace_slotN_contents(bundle.cbundle, 0x00002000040LL, slotnum);
205 ptrace(PTRACE_POKETEXT, pid, addr, bundle.ubundle[0]);
206 ptrace(PTRACE_POKETEXT, pid, addr + 8, bundle.ubundle[1]);
216 union bundle_t bundle;
223 bundle.ubundle[0] = ptrace(PTRACE_PEEKTEXT, pid, addr, 0);
224 bundle.ubundle[1] = ptrace(PTRACE_PEEKTEXT, pid, addr + 8, 0);
228 replace_slotN_contents(bundle.cbundle, instr, slotnum);
229 ptrace(PTRACE_POKETEXT, pid, addr, bundle.ubundle[0]);
230 ptrace(PTRACE_POKETEXT, pid, addr + 8, bundle.ubundle[1]);