Teach -data-list-register-values to not include unavailable registers
This patch adds an option --skip-unavailable to MI command
-data-list-register-values, so that unavailable registers are not
displayed (on the context of traceframes).
The old -data-list-register-values command behaves like
  -data-list-register-values x 0 8
  ^done,register-values=[{number="0",value="<unavailable>"},{number="8",value="0x80483de"}]
With this patch, an option --skip-unavailable is added,
  -data-list-register-values --skip-unavailable x 0 8
  ^done,register-values=[{number="8",value="0x80483de"}]
gdb:
2013-06-20  Pedro Alves  <pedro@codesourcery.com>
	    Yao Qi  <yao@codesourcery.com>
	* NEWS: Mention the new option '--skip-unavailable' of command
	-data-list-register-values.
	* mi/mi-main.c (mi_cmd_data_list_register_values): Accept the
	--skip-unavailable option.  Adjust to use output_register.
	(output_register): Add new 'skip_unavailable' parameter.
	Handle it.
gdb/doc:
2013-06-20  Pedro Alves  <pedro@codesourcery.com>
	* gdb.texinfo (GDB/MI Data Manipulation)
	<-data-list-register-values>: Document the --skip-unavailable
	option.
gdb/testsuite:
2013-06-20  Yao Qi  <yao@codesourcery.com>
	* gdb.trace/mi-trace-unavailable.exp: Set tracepoint on 'foo'
	and set an action.
	(test_trace_unavailable): Test command -data-list-register-values
	in the context of traceframe and with option --skip-unavailable.
	* gdb.trace/trace-unavailable.c (foo): New.
	(main): Call it.
	* gdb.mi/gdb2549.exp: Update matching pattern.