summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2016-06-04 04:32:17 +0000
committerCraig Topper <craig.topper@gmail.com>2016-06-04 04:32:17 +0000
commit6ae375c9ba8f4d0665a20ed2d1dac2be31aad04d (patch)
treec5310c2ca28516132f129840515042413e1ceed8 /llvm/lib
parent5250634334fc888ba30a02782c0f83c22b8d3c2b (diff)
downloadbcm5719-llvm-6ae375c9ba8f4d0665a20ed2d1dac2be31aad04d.tar.gz
bcm5719-llvm-6ae375c9ba8f4d0665a20ed2d1dac2be31aad04d.zip
[X86] Use smaller types to shrink the intrinsic lowering tables by about 12K.
llvm-svn: 271776
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/X86IntrinsicsInfo.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/lib/Target/X86/X86IntrinsicsInfo.h b/llvm/lib/Target/X86/X86IntrinsicsInfo.h
index fed022aad40..ad1263d5b5e 100644
--- a/llvm/lib/Target/X86/X86IntrinsicsInfo.h
+++ b/llvm/lib/Target/X86/X86IntrinsicsInfo.h
@@ -19,7 +19,7 @@
namespace llvm {
-enum IntrinsicType {
+enum IntrinsicType : uint16_t {
INTR_NO_TYPE,
GATHER, SCATTER, PREFETCH, RDSEED, RDRAND, RDPMC, RDTSC, XTEST, ADX, FPCLASS, FPCLASSS,
INTR_TYPE_1OP, INTR_TYPE_2OP, INTR_TYPE_2OP_IMM8, INTR_TYPE_3OP, INTR_TYPE_4OP,
@@ -40,10 +40,10 @@ enum IntrinsicType {
struct IntrinsicData {
- unsigned Id;
+ uint16_t Id;
IntrinsicType Type;
- unsigned Opc0;
- unsigned Opc1;
+ uint16_t Opc0;
+ uint16_t Opc1;
bool operator<(const IntrinsicData &RHS) const {
return Id < RHS.Id;
@@ -237,7 +237,7 @@ static const IntrinsicData IntrinsicsWithChain[] = {
/*
* Find Intrinsic data by intrinsic ID
*/
-static const IntrinsicData* getIntrinsicWithChain(unsigned IntNo) {
+static const IntrinsicData* getIntrinsicWithChain(uint16_t IntNo) {
IntrinsicData IntrinsicToFind = {IntNo, INTR_NO_TYPE, 0, 0 };
const IntrinsicData *Data = std::lower_bound(std::begin(IntrinsicsWithChain),
@@ -2267,7 +2267,7 @@ static const IntrinsicData IntrinsicsWithoutChain[] = {
* Retrieve data for Intrinsic without chain.
* Return nullptr if intrinsic is not defined in the table.
*/
-static const IntrinsicData* getIntrinsicWithoutChain(unsigned IntNo) {
+static const IntrinsicData* getIntrinsicWithoutChain(uint16_t IntNo) {
IntrinsicData IntrinsicToFind = { IntNo, INTR_NO_TYPE, 0, 0 };
const IntrinsicData *Data = std::lower_bound(std::begin(IntrinsicsWithoutChain),
std::end(IntrinsicsWithoutChain),
OpenPOWER on IntegriCloud