1*38fd1498Szrj /* LTO IL compression streams. 2*38fd1498Szrj 3*38fd1498Szrj Copyright (C) 2009-2018 Free Software Foundation, Inc. 4*38fd1498Szrj Contributed by Simon Baldwin <simonb@google.com> 5*38fd1498Szrj 6*38fd1498Szrj This file is part of GCC. 7*38fd1498Szrj 8*38fd1498Szrj GCC is free software; you can redistribute it and/or modify it 9*38fd1498Szrj under the terms of the GNU General Public License as published by 10*38fd1498Szrj the Free Software Foundation; either version 3, or (at your option) 11*38fd1498Szrj any later version. 12*38fd1498Szrj 13*38fd1498Szrj GCC is distributed in the hope that it will be useful, but WITHOUT 14*38fd1498Szrj ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 15*38fd1498Szrj or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 16*38fd1498Szrj License for more details. 17*38fd1498Szrj 18*38fd1498Szrj You should have received a copy of the GNU General Public License 19*38fd1498Szrj along with GCC; see the file COPYING3. If not see 20*38fd1498Szrj <http://www.gnu.org/licenses/>. */ 21*38fd1498Szrj 22*38fd1498Szrj #ifndef GCC_LTO_COMPRESS_H 23*38fd1498Szrj #define GCC_LTO_COMPRESS_H 24*38fd1498Szrj 25*38fd1498Szrj struct lto_compression_stream; 26*38fd1498Szrj 27*38fd1498Szrj /* In lto-compress.c. */ 28*38fd1498Szrj extern struct lto_compression_stream 29*38fd1498Szrj *lto_start_compression (void (*callback) (const char *, unsigned, void *), 30*38fd1498Szrj void *opaque); 31*38fd1498Szrj extern void lto_compress_block (struct lto_compression_stream *stream, 32*38fd1498Szrj const char *base, size_t num_chars); 33*38fd1498Szrj extern void lto_end_compression (struct lto_compression_stream *stream); 34*38fd1498Szrj 35*38fd1498Szrj extern struct lto_compression_stream 36*38fd1498Szrj *lto_start_uncompression (void (*callback) (const char *, unsigned, void *), 37*38fd1498Szrj void *opaque); 38*38fd1498Szrj extern void lto_uncompress_block (struct lto_compression_stream *stream, 39*38fd1498Szrj const char *base, size_t num_chars); 40*38fd1498Szrj extern void lto_end_uncompression (struct lto_compression_stream *stream); 41*38fd1498Szrj 42*38fd1498Szrj #endif /* GCC_LTO_COMPRESS_H */ 43