i965: Do better fake context setup in unit tests

In future tests, we will start relying on devinfo and not just brw in the
compiler.  Changing this now keeps these tests from failing in the future.

Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
Jason Ekstrand 2015-04-17 15:23:18 -07:00
parent ceb6e5eebe
commit a921475c22
5 changed files with 24 additions and 5 deletions

View file

@ -291,7 +291,10 @@ int
main(int argc, char **argv)
{
struct brw_context *brw = calloc(1, sizeof(*brw));
brw->gen = 6;
struct brw_device_info *devinfo = calloc(1, sizeof(*devinfo));
brw->intelScreen = calloc(1, sizeof(*brw->intelScreen));
brw->intelScreen->devinfo = devinfo;
brw->gen = devinfo->gen = 6;
bool fail = false;
for (brw->gen = 6; brw->gen <= 7; brw->gen++) {

View file

@ -31,6 +31,7 @@ class cmod_propagation_test : public ::testing::Test {
public:
struct brw_context *brw;
struct brw_device_info *devinfo;
struct gl_context *ctx;
struct brw_wm_prog_data *prog_data;
struct gl_shader_program *shader_prog;
@ -51,6 +52,9 @@ public:
void cmod_propagation_test::SetUp()
{
brw = (struct brw_context *)calloc(1, sizeof(*brw));
devinfo = (struct brw_device_info *)calloc(1, sizeof(*brw));
brw->intelScreen = (struct intel_screen *)calloc(1, sizeof(*brw->intelScreen));
brw->intelScreen->devinfo = devinfo;
ctx = &brw->ctx;
fp = ralloc(NULL, struct brw_fragment_program);
@ -61,7 +65,7 @@ void cmod_propagation_test::SetUp()
_mesa_init_fragment_program(ctx, &fp->program, GL_FRAGMENT_SHADER, 0);
brw->gen = 4;
brw->gen = devinfo->gen = 4;
}
static fs_inst *

View file

@ -31,6 +31,7 @@ class saturate_propagation_test : public ::testing::Test {
public:
struct brw_context *brw;
struct brw_device_info *devinfo;
struct gl_context *ctx;
struct brw_wm_prog_data *prog_data;
struct gl_shader_program *shader_prog;
@ -51,6 +52,9 @@ public:
void saturate_propagation_test::SetUp()
{
brw = (struct brw_context *)calloc(1, sizeof(*brw));
devinfo = (struct brw_device_info *)calloc(1, sizeof(*brw));
brw->intelScreen = (struct intel_screen *)calloc(1, sizeof(*brw->intelScreen));
brw->intelScreen->devinfo = devinfo;
ctx = &brw->ctx;
fp = ralloc(NULL, struct brw_fragment_program);
@ -61,7 +65,7 @@ void saturate_propagation_test::SetUp()
_mesa_init_fragment_program(ctx, &fp->program, GL_FRAGMENT_SHADER, 0);
brw->gen = 4;
brw->gen = devinfo->gen = 4;
}
static fs_inst *

View file

@ -34,6 +34,7 @@ class copy_propagation_test : public ::testing::Test {
public:
struct brw_context *brw;
struct brw_device_info *devinfo;
struct gl_context *ctx;
struct gl_shader_program *shader_prog;
struct brw_vertex_program *vp;
@ -93,6 +94,9 @@ protected:
void copy_propagation_test::SetUp()
{
brw = (struct brw_context *)calloc(1, sizeof(*brw));
devinfo = (struct brw_device_info *)calloc(1, sizeof(*brw));
brw->intelScreen = (struct intel_screen *)calloc(1, sizeof(*brw->intelScreen));
brw->intelScreen->devinfo = devinfo;
ctx = &brw->ctx;
vp = ralloc(NULL, struct brw_vertex_program);
@ -103,7 +107,7 @@ void copy_propagation_test::SetUp()
_mesa_init_vertex_program(ctx, &vp->program, GL_VERTEX_SHADER, 0);
brw->gen = 4;
brw->gen = devinfo->gen = 4;
}
static void

View file

@ -36,6 +36,7 @@ class register_coalesce_test : public ::testing::Test {
public:
struct brw_context *brw;
struct brw_device_info *devinfo;
struct gl_context *ctx;
struct gl_shader_program *shader_prog;
struct brw_vertex_program *vp;
@ -96,6 +97,9 @@ protected:
void register_coalesce_test::SetUp()
{
brw = (struct brw_context *)calloc(1, sizeof(*brw));
devinfo = (struct brw_device_info *)calloc(1, sizeof(*brw));
brw->intelScreen = (struct intel_screen *)calloc(1, sizeof(*brw->intelScreen));
brw->intelScreen->devinfo = devinfo;
ctx = &brw->ctx;
vp = ralloc(NULL, struct brw_vertex_program);
@ -106,7 +110,7 @@ void register_coalesce_test::SetUp()
_mesa_init_vertex_program(ctx, &vp->program, GL_VERTEX_SHADER, 0);
brw->gen = 4;
brw->gen = devinfo->gen = 4;
}
static void