OLD | NEW |
1 //===- PNaClABITypeChecker.h - Verify PNaCl ABI rules ---------------------===// | 1 //===- PNaClABITypeChecker.h - Verify PNaCl ABI rules ---------------------===// |
2 // | 2 // |
3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 // | 9 // |
10 // Common type-checking code for module and function-level passes | 10 // Common type-checking code for module and function-level passes |
(...skipping 15 matching lines...) Expand all Loading... |
26 // Returns true if Ty is a valid argument or return value type for PNaCl. | 26 // Returns true if Ty is a valid argument or return value type for PNaCl. |
27 static bool isValidParamType(const Type *Ty); | 27 static bool isValidParamType(const Type *Ty); |
28 | 28 |
29 public: | 29 public: |
30 // Returns true if Ty is a valid function type for PNaCl. | 30 // Returns true if Ty is a valid function type for PNaCl. |
31 static bool isValidFunctionType(const FunctionType *FTy); | 31 static bool isValidFunctionType(const FunctionType *FTy); |
32 | 32 |
33 // Returns true if Ty is a valid non-derived type for PNaCl. | 33 // Returns true if Ty is a valid non-derived type for PNaCl. |
34 static bool isValidScalarType(const Type *Ty); | 34 static bool isValidScalarType(const Type *Ty); |
35 | 35 |
| 36 // Returns true if Ty is a valid vector type for PNaCl. |
| 37 static bool isValidVectorType(const Type *Ty); |
| 38 |
36 // There's no built-in way to get the name of a type, so use a | 39 // There's no built-in way to get the name of a type, so use a |
37 // string ostream to print it. | 40 // string ostream to print it. |
38 static std::string getTypeName(const Type *T) { | 41 static std::string getTypeName(const Type *T) { |
39 std::string TypeName; | 42 std::string TypeName; |
40 raw_string_ostream N(TypeName); | 43 raw_string_ostream N(TypeName); |
41 T->print(N); | 44 T->print(N); |
42 return N.str(); | 45 return N.str(); |
43 } | 46 } |
44 }; | 47 }; |
45 } // namespace llvm | 48 } // namespace llvm |
46 | 49 |
47 #endif // LIB_ANALYSIS_NACL_CHECKTYPES_H | 50 #endif // LIB_ANALYSIS_NACL_CHECKTYPES_H |
OLD | NEW |