libFirm
Loading...
Searching...
No Matches
iropt.h
1/*
2 * This file is part of libFirm.
3 * Copyright (C) 2012 University of Karlsruhe.
4 */
5
11#ifndef FIRM_IR_IROPT_H
12#define FIRM_IR_IROPT_H
13
14#include "firm_types.h"
15
16#include "begin.h"
17
28FIRM_API ir_tarval *computed_value(const ir_node *n);
29
39
43FIRM_API int ir_is_negated_value(const ir_node *a, const ir_node *b);
44
50 const ir_node *right);
51
57FIRM_API void ir_allow_imprecise_float_transforms(int enable);
58
61
64#include "end.h"
65
66#endif
struct ir_node ir_node
Procedure Graph Node.
Definition firm_types.h:53
ir_relation
Relations for comparing numbers.
Definition firm_types.h:162
ir_relation ir_get_possible_cmp_relations(const ir_node *left, const ir_node *right)
(conservatively) approximates all possible relations when comparing the value left and right
ir_node * optimize_in_place(ir_node *n)
Applies all optimizations to n that are expressible as a pattern in Firm, i.e., they need not a walk ...
void ir_allow_imprecise_float_transforms(int enable)
enable/disable imprecise floatingpoint optimizations.
int ir_imprecise_float_transforms_allowed(void)
return 1 if imprecise float transformations are allowed.
int ir_is_negated_value(const ir_node *a, const ir_node *b)
checks whether 1 value is the negated other value
ir_tarval * computed_value(const ir_node *n)
If the expression referenced can be evaluated statically computed_value returns a tarval representing...
struct ir_tarval ir_tarval
Target Machine Value.
Definition firm_types.h:68