radeon: make texture logging more useful
[mesa.git] / src / gallium / drivers / r600 / sb / sb_shader.cpp
index e8da20ce7245cc8eff54b63af9a8cddbd6138e31..98e52b16e0e3beac7d5137739315cbf610faf5b6 100644 (file)
@@ -39,7 +39,7 @@ shader::shader(sb_context &sctx, shader_target t, unsigned id)
   coal(*this), bbs(),
   target(t), vt(ex), ex(*this), root(),
   compute_interferences(),
-  has_alu_predication(), uses_gradients(), ngpr(), nstack() {}
+  has_alu_predication(), uses_gradients(), safe_math(), ngpr(), nstack() {}
 
 bool shader::assign_slot(alu_node* n, alu_node *slots[5]) {
 
@@ -260,7 +260,6 @@ node* shader::create_node(node_type nt, node_subtype nst, node_flags flags) {
 
 alu_node* shader::create_alu() {
        alu_node* n = new (pool.allocate(sizeof(alu_node))) alu_node();
-       memset(&n->bc, 0, sizeof(bc_alu));
        all_nodes.push_back(n);
        return n;
 }
@@ -281,7 +280,6 @@ alu_packed_node* shader::create_alu_packed() {
 
 cf_node* shader::create_cf() {
        cf_node* n = new (pool.allocate(sizeof(cf_node))) cf_node();
-       memset(&n->bc, 0, sizeof(bc_cf));
        n->bc.barrier = 1;
        all_nodes.push_back(n);
        return n;
@@ -289,7 +287,6 @@ cf_node* shader::create_cf() {
 
 fetch_node* shader::create_fetch() {
        fetch_node* n = new (pool.allocate(sizeof(fetch_node))) fetch_node();
-       memset(&n->bc, 0, sizeof(bc_fetch));
        all_nodes.push_back(n);
        return n;
 }
@@ -426,60 +423,12 @@ cf_node* shader::create_cf(unsigned op) {
 std::string shader::get_full_target_name() {
        std::string s = get_shader_target_name();
        s += "/";
-       s += get_hw_chip_name();
+       s += ctx.get_hw_chip_name();
        s += "/";
-       s += get_hw_class_name();
+       s += ctx.get_hw_class_name();
        return s;
 }
 
-const char* shader::get_hw_class_name() {
-       switch (ctx.hw_class) {
-#define TRANSLATE_HW_CLASS(c) case HW_CLASS_##c: return #c
-               TRANSLATE_HW_CLASS(R600);
-               TRANSLATE_HW_CLASS(R700);
-               TRANSLATE_HW_CLASS(EVERGREEN);
-               TRANSLATE_HW_CLASS(CAYMAN);
-#undef TRANSLATE_HW_CLASS
-               default:
-                       return "INVALID_CHIP_CLASS";
-       }
-}
-
-const char* shader::get_hw_chip_name() {
-       switch (ctx.hw_chip) {
-#define TRANSLATE_CHIP(c) case HW_CHIP_##c: return #c
-               TRANSLATE_CHIP(R600);
-               TRANSLATE_CHIP(RV610);
-               TRANSLATE_CHIP(RV630);
-               TRANSLATE_CHIP(RV670);
-               TRANSLATE_CHIP(RV620);
-               TRANSLATE_CHIP(RV635);
-               TRANSLATE_CHIP(RS780);
-               TRANSLATE_CHIP(RS880);
-               TRANSLATE_CHIP(RV770);
-               TRANSLATE_CHIP(RV730);
-               TRANSLATE_CHIP(RV710);
-               TRANSLATE_CHIP(RV740);
-               TRANSLATE_CHIP(CEDAR);
-               TRANSLATE_CHIP(REDWOOD);
-               TRANSLATE_CHIP(JUNIPER);
-               TRANSLATE_CHIP(CYPRESS);
-               TRANSLATE_CHIP(HEMLOCK);
-               TRANSLATE_CHIP(PALM);
-               TRANSLATE_CHIP(SUMO);
-               TRANSLATE_CHIP(SUMO2);
-               TRANSLATE_CHIP(BARTS);
-               TRANSLATE_CHIP(TURKS);
-               TRANSLATE_CHIP(CAICOS);
-               TRANSLATE_CHIP(CAYMAN);
-#undef TRANSLATE_CHIP
-
-               default:
-                       assert(!"unknown chip");
-                       return "INVALID_CHIP";
-       }
-}
-
 const char* shader::get_shader_target_name() {
        switch (target) {
                case TARGET_VS: return "VS";