aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2000-03-04 16:40:05 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2000-03-04 11:40:05 -0500
commit72c602fc0105c277205ef0009ced55cf1aac1b11 (patch)
tree0bc00a84f047a96e621c6557559e38b55168e59e /gcc/tree.h
parent32070bf2d8a85cc742b3ac8d4873cadd9c863d40 (diff)
downloadgcc-72c602fc0105c277205ef0009ced55cf1aac1b11.zip
gcc-72c602fc0105c277205ef0009ced55cf1aac1b11.tar.gz
gcc-72c602fc0105c277205ef0009ced55cf1aac1b11.tar.bz2
machmode.h (mode_for_size, [...]): SIZE now signed.
* machmode.h (mode_for_size, smallest_mode_for_size): SIZE now signed. * stor-layout.c (mode_for_size, smallest_mode_for_size): Likewise. (mode_for_size_tree): New function. (layout_decl, layout_type): Call it and clean up BLKmode checks. * tree.h (mode_for_size_tree): New declaration. From-SVN: r32326
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index 4c9fc73..1a82758 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1799,6 +1799,14 @@ extern tree type_hash_canon PARAMS ((int, tree));
extern void layout_decl PARAMS ((tree, unsigned));
+/* Return the mode for data of a given size SIZE and mode class CLASS.
+ If LIMIT is nonzero, then don't use modes bigger than MAX_FIXED_MODE_SIZE.
+ The value is BLKmode if no other mode is found. This is like
+ mode_for_size, but is passed a tree. */
+
+extern enum machine_mode mode_for_size_tree PARAMS ((tree, enum mode_class,
+ int));
+
/* Return an expr equal to X but certainly not valid as an lvalue. */
extern tree non_lvalue PARAMS ((tree));