From: Matt Turner Date: Sat, 6 Dec 2014 22:18:21 +0000 (-0800) Subject: i965: Remove default from brw_instruction_name switch to catch missing names. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f65200ccc9115cec9da780d8cdd119e934fdc664;p=mesa.git i965: Remove default from brw_instruction_name switch to catch missing names. The case-range extension is available in clang and gcc at least back to 3.4.0. Signed-off-by: Chris Forbes --- diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp index c0ca26b17e6..56aa7578603 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.cpp +++ b/src/mesa/drivers/dri/i965/brw_shader.cpp @@ -380,12 +380,10 @@ brw_texture_offset(struct gl_context *ctx, int *offsets, const char * brw_instruction_name(enum opcode op) { - char *fallback; - - if (op < ARRAY_SIZE(opcode_descs) && opcode_descs[op].name) - return opcode_descs[op].name; - switch (op) { + case BRW_OPCODE_MOV ... BRW_OPCODE_NOP: + assert(opcode_descs[op].name); + return opcode_descs[op].name; case FS_OPCODE_FB_WRITE: return "fb_write"; case FS_OPCODE_BLORP_FB_WRITE: @@ -557,14 +555,9 @@ brw_instruction_name(enum opcode op) return "gs_svb_set_dst_index"; case GS_OPCODE_FF_SYNC_SET_PRIMITIVES: return "gs_ff_sync_set_primitives"; - - default: - /* Yes, this leaks. It's in debug code, it should never occur, and if - * it does, you should just add the case to the list above. - */ - asprintf(&fallback, "op%d", op); - return fallback; } + + unreachable("not reached"); } backend_visitor::backend_visitor(struct brw_context *brw,