public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/guojiufu/heads/guojiufu-branch)] testsuite: Disable colorization for ubsan test
@ 2020-06-10  3:21 Jiu Fu Guo
  0 siblings, 0 replies; only message in thread
From: Jiu Fu Guo @ 2020-06-10  3:21 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:2b11374cb8d864dff3792e7c84188ba7e8f136e7

commit 2b11374cb8d864dff3792e7c84188ba7e8f136e7
Author: Kito Cheng <kito.cheng@sifive.com>
Date:   Tue Jun 2 10:17:12 2020 -0600

    testsuite: Disable colorization for ubsan test
    
     - Run gcc testsuite with qemu will print out ascii color code for
       ubsan related testcase, however several testcase didn't consider
       that, so disable colorization prevent such problem and simplify the
       process when adding testcase in future.
    
     - Verified on native X86 and RISC-V qemu full system mode and user mode.
    
    gcc/testsuite/ChangeLog:
    
            * lib/ubsan-dg.exp (orig_ubsan_options_saved): New
            (orig_ubsan_options): Ditto.
            (ubsan_init): Store UBSAN_OPTIONS and set UBSAN_OPTIONS.
            (ubsan_finish): Restore UBSAN_OPTIONS.

Diff:
---
 gcc/testsuite/lib/ubsan-dg.exp | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gcc/testsuite/lib/ubsan-dg.exp b/gcc/testsuite/lib/ubsan-dg.exp
index 015601cd404..f4ab29e2add 100644
--- a/gcc/testsuite/lib/ubsan-dg.exp
+++ b/gcc/testsuite/lib/ubsan-dg.exp
@@ -17,6 +17,9 @@
 # Return 1 if compilation with -fsanitize=undefined is error-free for trivial
 # code, 0 otherwise.
 
+set orig_ubsan_options_saved 0
+set orig_ubsan_options 0
+
 proc check_effective_target_fsanitize_undefined {} {
     return [check_runtime fsanitize_undefined {
 	int main (void) { return 0; }
@@ -74,6 +77,17 @@ proc ubsan_init { args } {
     global TOOL_OPTIONS
     global ubsan_saved_TEST_ALWAYS_FLAGS
     global ubsan_saved_ALWAYS_CXXFLAGS
+    global orig_ubsan_options_saved
+    global orig_ubsan_options
+
+    if { $orig_ubsan_options_saved == 0 } {
+	# Save the original environment.
+	if [info exists env(UBSAN_OPTIONS)] {
+	    set orig_ubsan_options "$env(UBSAN_OPTIONS)"
+	    set orig_ubsan_options_saved 1
+	}
+    }
+    setenv UBSAN_OPTIONS color=never
 
     set link_flags ""
     if ![is_remote host] {
@@ -109,6 +123,14 @@ proc ubsan_finish { args } {
     global ubsan_saved_ALWAYS_CXXFLAGS
     global ubsan_saved_library_path
     global ld_library_path
+    global orig_ubsan_options_saved
+    global orig_ubsan_options
+
+    if { $orig_ubsan_options_saved } {
+	setenv UBSAN_OPTIONS "$orig_ubsan_options"
+    } elseif [info exists env(UBSAN_OPTIONS)] {
+	unsetenv UBSAN_OPTIONS
+    }
 
     if [info exists ubsan_saved_ALWAYS_CXXFLAGS ] {
 	set ALWAYS_CXXFLAGS $ubsan_saved_ALWAYS_CXXFLAGS


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-06-10  3:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-10  3:21 [gcc(refs/users/guojiufu/heads/guojiufu-branch)] testsuite: Disable colorization for ubsan test Jiu Fu Guo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).