retdec
string_conversions.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_LLVMIR2HLL_LLVM_STRING_CONVERSIONS_H
8 #define RETDEC_LLVMIR2HLL_LLVM_STRING_CONVERSIONS_H
9 
10 #include <string>
11 
13 
14 namespace llvm {
15 
16 class ConstantArray;
17 class ConstantDataArray;
18 class GlobalVariable;
19 
20 } // namespace llvm
21 
22 namespace retdec {
23 namespace llvmir2hll {
24 
25 class ConstString;
26 
29 bool is8BitStringLiteral(const llvm::ConstantArray *ca);
30 bool stores8BitStringLiteral(const llvm::GlobalVariable *v);
32 
35 ShPtr<ConstString> toConstString(llvm::ConstantArray *ca);
36 ShPtr<ConstString> toConstString(llvm::ConstantDataArray *cda);
37 ShPtr<ConstString> getInitializerAsConstString(llvm::GlobalVariable *v);
39 
40 } // namespace llvmir2hll
41 } // namespace retdec
42 
43 #endif
Definition: itanium_ast_ctypes_parser.h:12
A library providing API for working with back-end IR.
ShPtr< ConstString > toConstString(llvm::ConstantArray *ca)
Converts the given LLVM constant array into ConstString.
Definition: string_conversions.cpp:126
ShPtr< ConstString > getInitializerAsConstString(llvm::GlobalVariable *v)
Returns the initializer of the given global variable as ConstString.
Definition: string_conversions.cpp:166
bool stores8BitStringLiteral(const llvm::GlobalVariable *v)
Checks if the global variable stores an 8-bit string literal.
Definition: string_conversions.cpp:70
bool is8BitStringLiteral(const llvm::ConstantArray *ca)
Checks if the given LLVM constant array represents an 8-bit string literal.
Definition: string_conversions.cpp:41
Definition: archive_wrapper.h:19
Declarations, aliases, macros, etc. for the use of smart pointers.