add stringify macro (#741)
* Add include/linux/stringify.h from Linux kernel 2.6.12-rc2
(cherry picked from commit https://github.com/torvalds/linux/commit/1da177e4c3f41524e886b7f1b8a0c1fc7321cac2)
* Make __stringify support variable argument macros too
For example:
__stringify(__entry->irq, __entry->ret)
will now convert it to:
"REC->irq, REC->ret"
It also still supports single arguments as the old macro did.
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
LKML-Reference: <49DC6751.30308@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
(cherry picked from commit https://github.com/torvalds/linux/commit/8f7c2c37319a81ef4c2bfdec67b1ccd5744d97e4)
* Add documentation.
* Adjust names in order to satisfy naming convention.
* Use __VA_ARGS__ instead a GNU extension as this works with more compilers.
Works with the newest versions of ICCAVR, GCC, CLANG and MSCV. C++11 may be required.
* Adjust to ETL folder structure.
* Change include guard to the one usual in ETL.
* Add definition guard for STRINGIFY.
---------
Co-authored-by: Linus Torvalds <torvalds@ppc970.osdl.org>
Co-authored-by: Zhaolei <zhaolei@cn.fujitsu.com>