]>
Commit | Line | Data |
---|---|---|
1fef66b0 MF |
1 | 2021-06-18 Mike Frysinger <vapier@gentoo.org> |
2 | ||
3 | * cpustate.c: Include sim-signal.h. | |
4 | * memory.c, simulator.c: Likewise. | |
5 | ||
f9a4d543 MF |
6 | 2021-06-17 Mike Frysinger <vapier@gentoo.org> |
7 | ||
8 | * configure.ac: Delete SIM_AC_OPTION_ENDIAN call. | |
9 | * aclocal.m4, configure: Regenerate. | |
10 | ||
a8a3d907 MF |
11 | 2021-06-16 Mike Frysinger <vapier@gentoo.org> |
12 | ||
13 | * configure: Regenerate. | |
14 | ||
52d37d2c MF |
15 | 2021-06-16 Mike Frysinger <vapier@gentoo.org> |
16 | ||
17 | * configure: Regenerate. | |
18 | * config.in: Removed. | |
19 | ||
bcaa61f7 MF |
20 | 2021-06-15 Mike Frysinger <vapier@gentoo.org> |
21 | ||
22 | * config.in, configure: Regenerate. | |
23 | ||
82e6d6bf MF |
24 | 2021-06-14 Mike Frysinger <vapier@gentoo.org> |
25 | ||
26 | * configure.ac: Delete call to SIM_AC_OPTION_WARNINGS. | |
27 | * configure: Regenerate. | |
28 | ||
ba307cdd MF |
29 | 2021-06-12 Mike Frysinger <vapier@gentoo.org> |
30 | ||
31 | * configure.ac: Delete call to SIM_AC_OPTION_ALIGNMENT. | |
32 | * interp.c (sim_open): Set current_alignment. | |
33 | ||
dba333c1 MF |
34 | 2021-06-12 Mike Frysinger <vapier@gentoo.org> |
35 | ||
36 | * aclocal.m4, config.in, configure: Regenerate. | |
37 | ||
b15c5d7a MF |
38 | 2021-06-12 Mike Frysinger <vapier@gentoo.org> |
39 | ||
40 | * config.in, configure: Regenerate. | |
41 | ||
f4fdd845 MF |
42 | 2021-05-17 Mike Frysinger <vapier@gentoo.org> |
43 | ||
44 | * sim-main.h (SIM_HAVE_COMMON_SIM_STATE): Delete. | |
45 | ||
383861bd MF |
46 | 2021-05-17 Mike Frysinger <vapier@gentoo.org> |
47 | ||
48 | * sim-main.h (SIM_HAVE_COMMON_SIM_STATE): Define. | |
49 | (struct sim_state): Delete. | |
50 | ||
6df01ab8 MF |
51 | 2021-05-16 Mike Frysinger <vapier@gentoo.org> |
52 | ||
53 | * cpustate.c: Include defs.h. | |
54 | * interp.c: Replace config.h include with defs.h. | |
55 | * memory.c, simulator.c: Likewise. | |
56 | * cpustate.h, simulator.h: Delete config.h include. | |
57 | ||
79633c12 MF |
58 | 2021-05-16 Mike Frysinger <vapier@gentoo.org> |
59 | ||
60 | * config.in, configure: Regenerate. | |
61 | ||
df68e12b MF |
62 | 2021-05-14 Mike Frysinger <vapier@gentoo.org> |
63 | ||
64 | * cpustate.h: Update include path. | |
65 | * interp.c: Likewise. | |
66 | ||
aa0fca16 MF |
67 | 2021-05-04 Mike Frysinger <vapier@gentoo.org> |
68 | ||
69 | * configure: Regenerate. | |
70 | ||
fe348617 MF |
71 | 2021-05-01 Mike Frysinger <vapier@gentoo.org> |
72 | ||
73 | * config.in, configure: Regenerate. | |
74 | ||
f1ca3215 MF |
75 | 2021-05-01 Mike Frysinger <vapier@gentoo.org> |
76 | ||
77 | * cpustate.c (aarch64_set_FP_float): Change lx to PRIx64. | |
78 | (aarch64_set_FP_double, aarch64_set_FP_long_double, | |
79 | aarch64_set_vec_u64, aarch64_set_vec_s64): Likewise. | |
80 | ||
ce224813 MF |
81 | 2021-05-01 Mike Frysinger <vapier@gentoo.org> |
82 | ||
83 | * simulator.c (do_fcvtzu): Change UL to ULL. | |
84 | ||
66d055c7 MF |
85 | 2021-04-26 Mike Frysinger <vapier@gentoo.org> |
86 | ||
87 | * aclocal.m4, config.in, configure: Regenerate. | |
88 | ||
19f6a43c TT |
89 | 2021-04-22 Tom Tromey <tom@tromey.com> |
90 | ||
91 | * configure, config.in: Rebuild. | |
92 | ||
efd82ac7 TT |
93 | 2021-04-22 Tom Tromey <tom@tromey.com> |
94 | ||
95 | * configure: Rebuild. | |
96 | ||
2662c237 MF |
97 | 2021-04-21 Mike Frysinger <vapier@gentoo.org> |
98 | ||
99 | * aclocal.m4: Regenerate. | |
100 | ||
1f195bc3 SM |
101 | 2021-04-21 Simon Marchi <simon.marchi@polymtl.ca> |
102 | ||
103 | * configure: Regenerate. | |
104 | ||
37e9f182 MF |
105 | 2021-04-18 Mike Frysinger <vapier@gentoo.org> |
106 | ||
107 | * configure: Regenerate. | |
108 | ||
d5a71b11 MF |
109 | 2021-04-12 Mike Frysinger <vapier@gentoo.org> |
110 | ||
111 | * interp.c (sim_open): Delete 3rd arg to sim_cpu_alloc_all. | |
112 | ||
0592e80b JW |
113 | 2021-04-07 Jim Wilson <jimw@sifive.com> |
114 | ||
115 | PR sim/27483 | |
116 | * simulator.c (set_flags_for_add32): Compare uresult against | |
117 | itself. Compare sresult against itself. | |
118 | ||
c2783492 MF |
119 | 2021-04-02 Mike Frysinger <vapier@gentoo.org> |
120 | ||
121 | * aclocal.m4, configure: Regenerate. | |
122 | ||
ebe9564b MF |
123 | 2021-02-28 Mike Frysinger <vapier@gentoo.org> |
124 | ||
125 | * configure: Regenerate. | |
126 | ||
760b3e8b MF |
127 | 2021-02-21 Mike Frysinger <vapier@gentoo.org> |
128 | ||
129 | * configure.ac (AC_CONFIG_MACRO_DIRS): Replace common with m4. | |
130 | * aclocal.m4, configure: Regenerate. | |
131 | ||
136da8cd MF |
132 | 2021-02-13 Mike Frysinger <vapier@gentoo.org> |
133 | ||
134 | * configure.ac: Replace sinclude with AC_CONFIG_MACRO_DIRS. | |
135 | * aclocal.m4, configure: Regenerate. | |
136 | ||
aa09469f MF |
137 | 2021-02-06 Mike Frysinger <vapier@gentoo.org> |
138 | ||
139 | * configure: Regenerate. | |
140 | ||
68ed2854 MF |
141 | 2021-01-11 Mike Frysinger <vapier@gentoo.org> |
142 | ||
143 | * config.in, configure: Regenerate. | |
144 | ||
bf470982 MF |
145 | 2021-01-09 Mike Frysinger <vapier@gentoo.org> |
146 | ||
147 | * configure: Regenerate. | |
148 | ||
46f900c0 MF |
149 | 2021-01-08 Mike Frysinger <vapier@gentoo.org> |
150 | ||
151 | * configure: Regenerate. | |
152 | ||
dfb856ba MF |
153 | 2021-01-04 Mike Frysinger <vapier@gentoo.org> |
154 | ||
155 | * configure: Regenerate. | |
156 | ||
69b1ffdb CB |
157 | 2020-02-06 Carlo Bramini <carlo_bramini@users.sourceforge.net> |
158 | ||
159 | PR sim/25318 | |
160 | * simulator.c (blr): Read destination register before calling | |
161 | aarch64_save_LR. | |
162 | ||
cd5b6074 AB |
163 | 2019-03-28 Andrew Burgess <andrew.burgess@embecosm.com> |
164 | ||
165 | * cpustate.c: Add 'libiberty.h' include. | |
166 | * interp.c: Add 'sim-assert.h' include. | |
167 | ||
5c887dd5 JB |
168 | 2017-09-06 John Baldwin <jhb@FreeBSD.org> |
169 | ||
170 | * configure: Regenerate. | |
171 | ||
bf155438 JW |
172 | 2017-04-22 Jim Wilson <jim.wilson@linaro.org> |
173 | ||
174 | * simulator.c (vec_load): Add M argument. Rewrite to iterate over | |
175 | registers based on structure size. | |
176 | (LD4, LD3, LD2, LD1_2, LD1_3, LD1_4): Pass new arg to vec_load. | |
177 | (LD1_1): Replace with call to vec_load. | |
178 | (vec_store): Add new M argument. Rewrite to iterate over registers | |
179 | based on structure size. | |
180 | (ST4, ST3, ST2, ST1_2, ST1_3, ST1_4): Pass new arg to vec_store. | |
181 | (ST1_1): Replace with call to vec_store. | |
182 | ||
ae27d3fe JW |
183 | 2017-04-08 Jim Wilson <jim.wilson@linaro.org> |
184 | ||
b630840c JW |
185 | * simulator.c (do_vec_FCVTL): New. |
186 | (do_vec_op1): Call do_vec_FCVTL. | |
187 | ||
ae27d3fe JW |
188 | * simulator.c (do_scalar_FCMGE_zero, do_scalar_FCMLE_zero, |
189 | do_scalar_FCMGT_zero, do_scalar_FCMEQ_zero, do_scalar_FCMLT_zero): New. | |
190 | (do_scalar_vec): Add calls to new functions. | |
191 | ||
f1241682 JW |
192 | 2017-03-25 Jim Wilson <jim.wilson@linaro.org> |
193 | ||
194 | * simulator.c (set_flags_for_add32): Cast result to uint32_t in carry | |
195 | flag check. | |
196 | ||
8ecbe595 JW |
197 | 2017-03-03 Jim Wilson <jim.wilson@linaro.org> |
198 | ||
199 | * simulator.c (mul64hi): Shift carry left by 32. | |
200 | (smulh): Change signum to negate. If negate, invert result, and add | |
201 | carry bit if low part of multiply result is zero. | |
202 | ||
ac189e7b JW |
203 | 2017-02-25 Jim Wilson <jim.wilson@linaro.org> |
204 | ||
152e1e1b JW |
205 | * simulator.c (do_vec_SMOV_into_scalar): New. |
206 | (do_vec_UMOV_into_scalar): Renamed from do_vec_MOV_into_scalar. | |
207 | Rewritten. | |
208 | (do_vec_UMOV): Merged into do_vec_UMOV_into_scalar and deleted. | |
209 | (do_vec_op1): Move do_vec_TRN call and do_vec_UZP call. Add | |
210 | do_vec_SMOV_into_scalar call. Delete do_vec_MOV_into_scalar and | |
211 | do_vec_UMOV calls. Add do_vec_UMOV_into_scalar call. | |
212 | ||
ac189e7b JW |
213 | * simulator.c (popcount): New. |
214 | (do_vec_CNT): New. | |
215 | (do_vec_op1): Add do_vec_CNT call. | |
216 | ||
2e7e5e28 JW |
217 | 2017-02-19 Jim Wilson <jim.wilson@linaro.org> |
218 | ||
219 | * simulator.c (do_vec_ADDV): Mov val declaration inside each case, | |
220 | with type set to input type size. | |
221 | (do_vec_xtl): Change bias from 3 to 4 for byte case. | |
222 | ||
e8f42b5e JW |
223 | 2017-02-14 Jim Wilson <jim.wilson@linaro.org> |
224 | ||
742e3a77 JW |
225 | * simulator.c (do_vec_MLA): Rewrite switch body. |
226 | ||
bf25e9a0 JW |
227 | * simulator.c (do_vec_bit): Change loop limits from 16 and 8 to 4 and |
228 | 2. Move test_false if inside loop. Fix logic for computing result | |
229 | stored to vd. | |
230 | ||
e8f42b5e JW |
231 | * simulator.c: (LDn_STn_SINGLE_LANE_AND_SIZE): New. |
232 | (do_vec_LDn_single, do_vec_STn_single): New. | |
233 | (do_vec_LDnR): Add and set new nregs var. Replace switch on nregs with | |
234 | loop over nregs using new var n. Add n times size to address in loop. | |
235 | Add n to vd in loop. | |
236 | (do_vec_load_store): Add comment for instruction bit 24. New var | |
237 | single to hold instruction bit 24. Add new code to use single. Move | |
238 | ldnr support inside single if statements. Fix ldnr register counts | |
239 | inside post if statement. Change HALT_NYI calls to HALT_UNALLOC. | |
240 | ||
fbf32f63 JW |
241 | 2017-01-23 Jim Wilson <jim.wilson@linaro.org> |
242 | ||
243 | * simulator.c (do_vec_compare): Add case 0x23 for CMTST. | |
244 | ||
05b3d79d JW |
245 | 2017-01-17 Jim Wilson <jim.wilson@linaro.org> |
246 | ||
247 | * simulator.c (do_vec_ADDV): Call aarch64_set_vec_u64 instead of | |
248 | aarch64_set_reg_u64. In case 2, call HALT_UNALLOC if not full. In | |
249 | case 3, call HALT_UNALLOC unconditionally. | |
250 | (do_vec_XTN): Delete shifts. In case 2, change index from i + 4 to | |
251 | i + 2. Delete if on bias, change index to i + bias * X. | |
252 | ||
a4fb5981 JW |
253 | 2017-01-09 Jim Wilson <jim.wilson@linaro.org> |
254 | ||
255 | * simulator.c (do_vec_UZP): Rewrite. | |
256 | ||
c0386d4d JW |
257 | 2017-01-04 Jim Wilson <jim.wilson@linaro.org> |
258 | ||
259 | * cpustate.c: Include math.h. | |
260 | (aarch64_set_FP_float): Use signbit to check for signed zero. | |
261 | (aarch64_set_FP_double): Likewise. | |
262 | * simulator.c (do_vec_MOV_immediate, case 0x8): Add missing break. | |
263 | (do_vec_mul): In all DO_VEC_WIDENING_MUL calls, make second and fourth | |
264 | args same size as third arg. | |
265 | (fmaxnm): Use isnan instead of fpclassify. | |
266 | (fminnm, dmaxnm, dminnm): Likewise. | |
267 | (do_vec_MLS): Reverse order of subtraction operands. | |
268 | (dexSimpleFPCondSelect): Call aarch64_get_FP_double or | |
269 | aarch64_get_FP_float to get source register contents. | |
270 | (UINT_MIN, ULONG_MIN, FLOAT_UINT_MAX, FLOAT_UINT_MIN, | |
271 | DOUBLE_UINT_MAX, DOUBLE_UINT_MIN, FLOAT_ULONG_MAX, FLOAT_ULONG_MIN, | |
272 | DOUBLE_ULONG_MAX, DOUBLE_ULONG_MIN): New. | |
273 | (do_fcvtzu): Use ULONG instead of LONG, and UINT instead of INT in | |
274 | raise_exception calls. | |
275 | ||
87903eaf JW |
276 | 2016-12-21 Jim Wilson <jim.wilson@linaro.org> |
277 | ||
278 | * simulator.c (set_flags_for_float_compare): Add code to handle Inf. | |
279 | Add comment to document NaN issue. | |
280 | (set_flags_for_double_compare): Likewise. | |
281 | ||
963201cf JW |
282 | 2016-12-13 Jim Wilson <jim.wilson@linaro.org> |
283 | ||
284 | * simulator.c (NEG, POS): Move before set_flags_for_add64. | |
285 | (set_flags_for_add64): Replace with a modified copy of | |
286 | set_flags_for_sub64. | |
287 | ||
668650d5 JW |
288 | 2016-12-03 Jim Wilson <jim.wilson@linaro.org> |
289 | ||
290 | * simulator.c (tbnz, tbz): Cast 1 to uint64_t before shifting. | |
291 | (dexTestBranchImmediate): Shift high bit of pos by 5 not 4. | |
292 | ||
88ddd4a1 JW |
293 | 2016-12-01 Jim Wilson <jim.wilson@linaro.org> |
294 | ||
88256e71 | 295 | * simulator.c (fsturs): Switch use of rn and st variables. |
88ddd4a1 JW |
296 | (fsturd, fsturq): Likewise |
297 | ||
5357150c MF |
298 | 2016-08-15 Mike Frysinger <vapier@gentoo.org> |
299 | ||
300 | * interp.c: Include bfd.h. | |
301 | (symcount, symtab, aarch64_get_sym_value): Delete. | |
302 | (remove_useless_symbols): Change count type to long. | |
303 | (aarch64_get_func): Add SIM_DESC to arg list. Add symcount | |
304 | and symtab local variables. | |
305 | (sim_create_inferior): Delete storage. Replace symbol code | |
306 | with a call to trace_load_symbols. | |
307 | * memory.c: Delete bfd.h, elf/internal.h, and elf/common.h | |
308 | includes. | |
309 | (aarch64_get_heap_start): Change aarch64_get_sym_value to | |
310 | trace_sym_value. | |
311 | * memory.h: Delete bfd.h include. | |
312 | (mem_add_blk): Delete unused prototype. | |
313 | * simulator.c (bl, blr): Pass SIM_DESC to aarch64_get_func. | |
314 | * simulator.c (aarch64_get_func): Add SIM_DESC to arg list. | |
315 | (aarch64_get_sym_value): Delete. | |
316 | ||
b14bdb3b NC |
317 | 2016-08-12 Nick Clifton <nickc@redhat.com> |
318 | ||
319 | * simulator.c (aarch64_step): Revert pervious delta. | |
320 | (aarch64_run): Call sim_events_tick after each | |
321 | instruction is simulated, and if necessary call | |
322 | sim_events_process. | |
323 | * simulator.h: Revert previous delta. | |
324 | ||
6a277579 NC |
325 | 2016-08-11 Nick Clifton <nickc@redhat.com> |
326 | ||
327 | * interp.c (sim_create_inferior): Allow for being called with a | |
328 | NULL abfd parameter. If a bfd is provided, initialise the sim | |
329 | with that start address. | |
330 | * simulator.c (HALT_NYI): Just print out the numeric value of the | |
331 | instruction when not tracing. | |
b14bdb3b NC |
332 | (aarch64_step): Change from static to global. |
333 | * simulator.h: Add a prototype for aarch64_step(). | |
6a277579 | 334 | |
293acfae AM |
335 | 2016-07-27 Alan Modra <amodra@gmail.com> |
336 | ||
337 | * memory.c: Don't include libbfd.h. | |
338 | ||
0f118bc7 NC |
339 | 2016-07-21 Nick Clifton <nickc@redhat.com> |
340 | ||
0c66ea4c | 341 | * simulator.c (fsqrts): Use sqrtf rather than sqrt. |
0f118bc7 | 342 | |
c7be4414 JW |
343 | 2016-06-30 Jim Wilson <jim.wilson@linaro.org> |
344 | ||
345 | * cpustate.h: Include config.h. | |
346 | (union GRegisterValue): Add WORDS_BIGENDIAN check. For big endian code | |
347 | use anonymous structs to align members. | |
348 | * simulator.c (aarch64_step): Use sim_core_read_buffer and | |
349 | endian_le2h_4 to read instruction from pc. | |
350 | ||
fd7ed446 NC |
351 | 2016-05-06 Nick Clifton <nickc@redhat.com> |
352 | ||
353 | * simulator.c (do_FMLA_by_element): New function. | |
354 | (do_vec_op2): Call it. | |
355 | ||
2cdad34c NC |
356 | 2016-04-27 Nick Clifton <nickc@redhat.com> |
357 | ||
358 | * simulator.c: Add TRACE_DECODE statements to all emulation | |
359 | functions. | |
360 | ||
7517e550 NC |
361 | 2016-03-30 Nick Clifton <nickc@redhat.com> |
362 | ||
363 | * cpustate.c (aarch64_set_reg_s32): New function. | |
364 | (aarch64_set_reg_u32): New function. | |
365 | (aarch64_get_FP_half): Place half precision value into the correct | |
366 | slot of the union. | |
367 | (aarch64_set_FP_half): Likewise. | |
368 | * cpustate.h: Add prototypes for aarch64_set_reg_s32 and | |
369 | aarch64_set_reg_u32. | |
370 | * memory.c (FETCH_FUNC): Cast the read value to the access type | |
371 | before converting it to the return type. Rename to FETCH_FUNC64. | |
372 | (FETCH_FUNC32): New macro. Duplicates FETCH_FUNC64 but for 32-bit | |
373 | accesses. Use for 32-bit memory access functions. | |
374 | * simulator.c (ldrsb_wb): Use sign extension not zero extension. | |
375 | (ldrb_scale_ext, ldrsh32_abs, ldrsh32_wb): Likewise. | |
376 | (ldrsh32_scale_ext, ldrsh_abs, ldrsh64_wb): Likewise. | |
377 | (ldrsh_scale_ext, ldrsw_abs): Likewise. | |
378 | (ldrh32_abs): Store 32 bit value not 64-bits. | |
379 | (ldrh32_wb, ldrh32_scale_ext): Likewise. | |
380 | (do_vec_MOV_immediate): Fix computation of val. | |
381 | (do_vec_MVNI): Likewise. | |
382 | (DO_VEC_WIDENING_MUL): New macro. | |
383 | (do_vec_mull): Use new macro. | |
384 | (do_vec_mul): Use new macro. | |
385 | (do_vec_MLA): Read values before writing. | |
386 | (do_vec_xtl): Likewise. | |
387 | (do_vec_SSHL): Select correct shift value. | |
388 | (do_vec_USHL): Likewise. | |
389 | (do_scalar_UCVTF): New function. | |
390 | (do_scalar_vec): Call new function. | |
391 | (store_pair_u64): Treat reads of SP as reads of XZR. | |
392 | ||
ef0d8ffc NC |
393 | 2016-03-29 Nick Clifton <nickc@redhat.com> |
394 | ||
395 | * cpustate.c: Remove space after asterisk in function parameters. | |
396 | * decode.h (greg): Delete unused function. | |
397 | (vreg, shift, extension, scaling, writeback, condcode): Likewise. | |
398 | * simulator.c: Use INSTR macro in more places. | |
399 | (HALT_NYI): Use sim_io_eprintf in place of fprintf. | |
400 | Remove extraneous whitespace. | |
401 | ||
5ab6d79e NC |
402 | 2016-03-23 Nick Clifton <nickc@redhat.com> |
403 | ||
404 | * cpustate.c (aarch64_get_FP_half): New function. Read a vector | |
405 | register as a half precision floating point number. | |
406 | (aarch64_set_FP_half): New function. Similar, but for setting | |
407 | a half precision register. | |
408 | (aarch64_get_thread_id): New function. Returns the value of the | |
409 | CPU's TPIDR register. | |
410 | (aarch64_get_FPCR): New function. Returns the value of the CPU's | |
411 | floating point control register. | |
412 | (aarch64_set_FPCR): New function. Set the value of the CPU's FPCR | |
413 | register. | |
414 | * cpustate.h: Add prototypes for new functions. | |
415 | * sim-main.h (struct _sim_cpu): Add FPCR and tpidr fields. | |
416 | * memory.c: Use unaligned core access functions for all memory | |
417 | reads and writes. | |
418 | * simulator.c (HALT_NYI): Generate an error message if tracing | |
419 | will not tell the user why the simulator is halting. | |
420 | (HALT_UNREACHABLE): Delete. Delete (unneeded) uses of the macro. | |
421 | (INSTR): New time-saver macro. | |
422 | (fldrb_abs): New function. Loads an 8-bit value using a scaled | |
423 | offset. | |
424 | (fldrh_abs): New function. Likewise for 16-bit values. | |
425 | (do_vec_SSHL): Allow for negative shift values. | |
426 | (do_vec_USHL): Likewise. | |
427 | (do_vec_SHL): Correct computation of shift amount. | |
428 | (do_vec_SSHR_USHR): Correct decision of signed vs unsigned | |
429 | shifts and computation of shift value. | |
430 | (clz): New function. Counts leading zero bits. | |
431 | (do_vec_CLZ): New function. Implements CLZ (vector). | |
432 | (do_vec_MOV_element): Call do_vec_CLZ. | |
433 | (dexSimpleFPCondCompare): Implement. | |
434 | (do_FCVT_half_to_single): New function. Implements one of the | |
435 | FCVT operations. | |
436 | (do_FCVT_half_to_double): New function. Likewise. | |
437 | (do_FCVT_single_to_half): New function. Likewise. | |
438 | (do_FCVT_double_to_half): New function. Likewise. | |
439 | (dexSimpleFPDataProc1Source): Call new FCVT functions. | |
440 | (do_scalar_SHL): Handle negative shifts. | |
441 | (do_scalar_shift): Handle SSHR. | |
442 | (do_scalar_USHL): New function. | |
443 | (do_double_add): Simplify to just performing a double precision | |
444 | add operation. Move remaining code into... | |
445 | (do_scalar_vec): ... New function. | |
446 | (dexLoadUnsignedImmediate): Call new fldrb_abs and fldrh_abs | |
447 | functions. | |
448 | (system_get): Add support for TPIDR, CTR, FPCR, FPSR and CPSR | |
449 | registers. | |
450 | (system_set): New function. | |
451 | (do_MSR_immediate): New function. Stub for now. | |
452 | (do_MSR_reg): New function. Likewise. Partially implements MSR | |
453 | instruction. | |
454 | (do_SYS): New function. Stub for now, | |
455 | (dexSystem): Call new functions. | |
456 | ||
e101a78b NC |
457 | 2016-03-18 Nick Clifton <nickc@redhat.com> |
458 | ||
459 | * cpustate.c: Remove spurious spaces from TRACE strings. | |
460 | Print hex equivalents of floats and doubles. | |
461 | Check element number against array size when accessing vector | |
462 | registers. | |
4c0ca98e NC |
463 | (GET_VEC_ELEMENT): Fix off by one error checking for an invalid |
464 | element index. | |
465 | (SET_VEC_ELEMENT): Likewise. | |
87bba7a5 | 466 | (GET_VEC_ELEMENT): And fix thinko using macro arguments. |
4c0ca98e | 467 | |
e101a78b NC |
468 | * memory.c: Trace memory reads when --trace-memory is enabled. |
469 | Remove float and double load and store functions. | |
470 | * memory.h (aarch64_get_mem_float): Delete prototype. | |
471 | (aarch64_get_mem_double): Likewise. | |
472 | (aarch64_set_mem_float): Likewise. | |
473 | (aarch64_set_mem_double): Likewise. | |
474 | * simulator (IS_SET): Always return either 0 or 1. | |
475 | (IS_CLEAR): Likewise. | |
476 | (fldrs_pcrel): Load and store floats using 32-bit memory accesses | |
477 | and doubles using 64-bit memory accesses. | |
478 | (fldrd_pcrel, fldrs_wb, fldrs_abs, fldrs_scale_ext): Likewise. | |
479 | (fldrd_wb, fldrd_abs, fsturs, fsturd, fldurs, fldurd): Likewise. | |
480 | (fstrs_abs, fstrs_wb, fstrs_scale_ext, fstrd_abs): Likewise. | |
481 | (fstrd_wb, fstrd_scale_ext, store_pair_float): Likewise. | |
482 | (store_pair_double, load_pair_float, load_pair_double): Likewise. | |
483 | (do_vec_MUL_by_element): New function. | |
484 | (do_vec_op2): Call do_vec_MUL_by_element. | |
485 | (do_scalar_NEG): New function. | |
486 | (do_double_add): Call do_scalar_NEG. | |
487 | ||
57aa1742 NC |
488 | 2016-03-03 Nick Clifton <nickc@redhat.com> |
489 | ||
490 | * simulator.c (set_flags_for_sub32): Correct type of signbit. | |
491 | (CondCompare): Swap interpretation of bit 30. | |
492 | (DO_ADDP): Delete macro. | |
493 | (do_vec_ADDP): Copy source registers before starting to update | |
494 | destination register. | |
495 | (do_vec_FADDP): Likewise. | |
496 | (do_vec_load_store): Fix computation of sizeof_operation. | |
497 | (rbit64): Fix type of constant. | |
498 | (aarch64_step): When displaying insn value, display all 32 bits. | |
499 | ||
ce39bd38 MF |
500 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
501 | ||
502 | * config.in, configure: Regenerate. | |
503 | ||
e19418e0 MF |
504 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
505 | ||
506 | * configure: Regenerate. | |
507 | ||
16f7876d MF |
508 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
509 | ||
510 | * configure.ac (SIM_AC_OPTION_ENVIRONMENT): Delete call. | |
511 | * configure: Regenerate. | |
512 | ||
99d8e879 MF |
513 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
514 | ||
515 | * configure: Regenerate. | |
35656e95 MF |
516 | |
517 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> | |
518 | ||
519 | * configure: Regenerate. | |
99d8e879 | 520 | |
347fe5bb MF |
521 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
522 | ||
523 | * configure.ac (SIM_AC_OPTION_INLINE): Delete call. | |
524 | * configure: Regenerate. | |
525 | ||
22be3fbe MF |
526 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
527 | ||
528 | * configure: Regenerate. | |
529 | ||
0dc73ef7 MF |
530 | 2016-01-10 Mike Frysinger <vapier@gentoo.org> |
531 | ||
532 | * configure: Regenerate. | |
533 | ||
936df756 MF |
534 | 2016-01-09 Mike Frysinger <vapier@gentoo.org> |
535 | ||
536 | * config.in, configure: Regenerate. | |
537 | ||
2e3d4f4d MF |
538 | 2016-01-06 Mike Frysinger <vapier@gentoo.org> |
539 | ||
540 | * interp.c (sim_create_inferior): Mark argv and env const. | |
541 | (sim_open): Mark argv const. | |
542 | ||
1a846c62 MF |
543 | 2016-01-05 Mike Frysinger <vapier@gentoo.org> |
544 | ||
545 | * interp.c: Delete dis-asm.h include. | |
546 | (info, opbuf, op_printf, aarch64_print_insn, sim_dis_read): Delete. | |
547 | (sim_create_inferior): Delete disassemble init logic. | |
548 | (OPTION_DISAS, aarch64_option_handler, aarch64_options): Delete. | |
549 | (sim_open): Delete sim_add_option_table call. | |
550 | * memory.c (mem_error): Delete disas check. | |
551 | * simulator.c: Delete dis-asm.h include. | |
552 | (disas): Delete. | |
553 | (HALT_UNALLOC): Replace disassembly logic with TRACE_DISASM. | |
554 | (HALT_NYI): Likewise. | |
555 | (handle_halt): Delete disas call. | |
556 | (aarch64_step): Replace disas logic with TRACE_DISASM. | |
557 | * simulator.h: Delete dis-asm.h include. | |
558 | (aarch64_print_insn): Delete. | |
559 | ||
bc273e17 MF |
560 | 2016-01-04 Mike Frysinger <vapier@gentoo.org> |
561 | ||
562 | * simulator.c (MAX, MIN): Delete. | |
563 | (do_vec_maxv): Change MAX to max and MIN to min. | |
564 | (do_vec_fminmaxV): Likewise. | |
565 | ||
ac8eefeb TG |
566 | 2016-01-04 Tristan Gingold <gingold@adacore.com> |
567 | ||
568 | * simulator.c: Remove syscall.h include. | |
569 | ||
9bbf6f91 MF |
570 | 2016-01-04 Mike Frysinger <vapier@gentoo.org> |
571 | ||
572 | * configure: Regenerate. | |
573 | ||
0cb8d851 MF |
574 | 2016-01-03 Mike Frysinger <vapier@gentoo.org> |
575 | ||
576 | * configure.ac (SIM_AC_OPTION_HOSTENDIAN): Delete. | |
577 | * configure: Regenerate. | |
578 | ||
1ac72f06 MF |
579 | 2016-01-02 Mike Frysinger <vapier@gentoo.org> |
580 | ||
581 | * configure: Regenerate. | |
582 | ||
5d015275 MF |
583 | 2015-12-27 Mike Frysinger <vapier@gentoo.org> |
584 | ||
585 | * interp.c (sim_dis_read): Change private_data to application_data. | |
586 | (sim_create_inferior): Likewise. | |
587 | ||
5e744ef8 MF |
588 | 2015-12-27 Mike Frysinger <vapier@gentoo.org> |
589 | ||
590 | * Makefile.in (SIM_OBJS): Delete sim-hload.o. | |
591 | ||
1b393626 MF |
592 | 2015-12-26 Mike Frysinger <vapier@gentoo.org> |
593 | ||
594 | * config.in, configure: Regenerate. | |
595 | ||
0e967299 MF |
596 | 2015-12-26 Mike Frysinger <vapier@gentoo.org> |
597 | ||
598 | * interp.c (sim_create_inferior): Update comment and argv check. | |
599 | ||
f66affe9 MF |
600 | 2015-12-14 Nick Clifton <nickc@redhat.com> |
601 | ||
602 | * simulator.c (system_get): New function. Provides read | |
603 | access to the dczid system register. | |
604 | (do_mrs): New function - implements the MRS instruction. | |
605 | (dexSystem): Call do_mrs for the MRS instruction. Halt on | |
606 | unimplemented system instructions. | |
607 | ||
608 | 2015-11-24 Nick Clifton <nickc@redhat.com> | |
609 | ||
610 | * configure.ac: New configure template. | |
611 | * aclocal.m4: Generate. | |
612 | * config.in: Generate. | |
613 | * configure: Generate. | |
614 | * cpustate.c: New file - functions for accessing AArch64 registers. | |
615 | * cpustate.h: New header. | |
616 | * decode.h: New header. | |
617 | * interp.c: New file - interface between GDB and simulator. | |
618 | * Makefile.in: New makefile template. | |
619 | * memory.c: New file - functions for simulating aarch64 memory | |
620 | accesses. | |
621 | * memory.h: New header. | |
622 | * sim-main.h: New header. | |
623 | * simulator.c: New file - aarch64 simulator functions. | |
624 | * simulator.h: New header. |