diff options
author | Jing Yu <jingyu@google.com> | 2009-11-05 15:11:04 -0800 |
---|---|---|
committer | Jing Yu <jingyu@google.com> | 2009-11-05 15:11:04 -0800 |
commit | df62c1c110e8532b995b23540b7e3695729c0779 (patch) | |
tree | dbbd4cbdb50ac38011e058a2533ee4c3168b0205 /gcc-4.4.0/gcc/fortran/target-memory.h | |
parent | 8d401cf711539af5a2f78d12447341d774892618 (diff) | |
download | toolchain_gcc-df62c1c110e8532b995b23540b7e3695729c0779.tar.gz toolchain_gcc-df62c1c110e8532b995b23540b7e3695729c0779.tar.bz2 toolchain_gcc-df62c1c110e8532b995b23540b7e3695729c0779.zip |
Check in gcc sources for prebuilt toolchains in Eclair.
Diffstat (limited to 'gcc-4.4.0/gcc/fortran/target-memory.h')
-rw-r--r-- | gcc-4.4.0/gcc/fortran/target-memory.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/gcc-4.4.0/gcc/fortran/target-memory.h b/gcc-4.4.0/gcc/fortran/target-memory.h new file mode 100644 index 000000000..bc3a1e8c0 --- /dev/null +++ b/gcc-4.4.0/gcc/fortran/target-memory.h @@ -0,0 +1,53 @@ +/* Simulate storage of variables into target memory, header. + Copyright (C) 2007, 2008 + Free Software Foundation, Inc. + Contributed by Paul Thomas and Brooks Moses + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 3, or (at your option) any later +version. + +GCC is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +<http://www.gnu.org/licenses/>. */ + +#ifndef GFC_TARGET_MEMORY_H +#define GFC_TARGET_MEMORY_H + +#include "gfortran.h" + +/* Convert a BOZ to REAL or COMPLEX. */ +bool gfc_convert_boz (gfc_expr *, gfc_typespec *); + +/* Return the size of an expression in its target representation. */ +size_t gfc_target_expr_size (gfc_expr *); + +/* Write a constant expression in binary form to a target buffer. */ +int gfc_encode_character (int, int, const gfc_char_t *, unsigned char *, + size_t); +int gfc_target_encode_expr (gfc_expr *, unsigned char *, size_t); + +/* Read a target buffer into a constant expression. */ + +int gfc_interpret_integer (int, unsigned char *, size_t, mpz_t); +int gfc_interpret_float (int, unsigned char *, size_t, mpfr_t); +int gfc_interpret_complex (int, unsigned char *, size_t, mpfr_t, mpfr_t); +int gfc_interpret_logical (int, unsigned char *, size_t, int *); +int gfc_interpret_character (unsigned char *, size_t, gfc_expr *); +int gfc_interpret_derived (unsigned char *, size_t, gfc_expr *); +int gfc_target_interpret_expr (unsigned char *, size_t, gfc_expr *); + +/* Merge overlapping equivalence initializers for trans-common.c. */ +size_t gfc_merge_initializers (gfc_typespec, gfc_expr *, + unsigned char *, unsigned char *, + size_t); + +#endif /* GFC_TARGET_MEMORY_H */ |