ext: Fix undefined-behavior bug in bitshift
[gem5.git] / ext / nomali / lib / mali_t6xx.hh
1 /*
2 * Copyright (c) 2014-2015 ARM Limited
3 * All rights reserved
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 * Authors: Andreas Sandberg
18 */
19
20 #ifndef _LIBNOMALIMODEL_MALI_T7XX_HH
21 #define _LIBNOMALIMODEL_MALI_T7XX_HH
22
23 #include "mali_midgard.hh"
24
25 namespace NoMali {
26
27 class MaliT6xxBase
28 : public MaliMidgard
29 {
30 public:
31 MaliT6xxBase(unsigned gpuType,
32 unsigned major, unsigned minor, unsigned status);
33
34 protected:
35 void setupControlIdRegisters(RegVector &regs) override;
36 };
37
38
39 /**
40 * Simple NoMali implementation of the Mali T60x
41 */
42 class MaliT60x
43 : public MaliT6xxBase
44 {
45 public:
46 MaliT60x(unsigned major, unsigned minor, unsigned status);
47 };
48
49 /**
50 * Simple NoMali implementation of the Mali T62x
51 */
52 class MaliT62x
53 : public MaliT6xxBase
54 {
55 public:
56 MaliT62x(unsigned major, unsigned minor, unsigned status);
57 };
58
59 }
60
61 #endif // _LIBNOMALIMODEL_MALI_T7XX_HH