Commit f9752b3e authored by Matthias Braun's avatar Matthias Braun
Browse files

Several x87 fixes, cleanups:

- typedef unsigned char vfp_liveness, to make code easier understandable
- sim_binop:
    - Add a few comments and move code around to make it easier to understand
- sim_store:
    - Don't forget to create an fxch for mode_E fstp
- sim_fCondJmp
    - Add a few comments and move code around to make it easier to understand
    - comrs already reverse Jumps, no XCHG needed
    - test for op == 0 not op1 == op2 after fxch
    - assign results to the correct register slots!

- No need for block schedule anymore, fill worklist with successor blocks
- Get liveness from birg and don't recompute
parent c65b13d9
This diff is collapsed.
...@@ -15,11 +15,10 @@ ...@@ -15,11 +15,10 @@
* by real ones. * by real ones.
* *
* @param env architecture environment * @param env architecture environment
* @param irg the graph to simulate and patch * @param birg the graph to simulate and patch
* @param blk_list an array containing the block schedule
* *
* Registers must be allocated. Needs a block-schedule. * Registers must be allocated. Needs a block-schedule.
*/ */
void x87_simulate_graph(const arch_env_t *env, ir_graph *irg, ir_node **blk_list); void x87_simulate_graph(const arch_env_t *env, be_irg_t *birg);
#endif /* _IA32_X87_H_ */ #endif /* _IA32_X87_H_ */
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment