]> git.ipfire.org Git - thirdparty/gcc.git/commit
gccrs: Add execution test cases
authorPhilip Herron <philip.herron@embecosm.com>
Tue, 23 Aug 2022 15:02:25 +0000 (16:02 +0100)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 13 Dec 2022 13:00:03 +0000 (14:00 +0100)
commit5a56869d6e339187da4a91697f1185227c8a03ba
tree9478a3bd68c9869ddddd84f6a77ee94fb92a4f4f
parent97705b4459b645770ffb6c01ff6177de6774ef3c
gccrs: Add execution test cases

This is similar to the compile/torture/*.rs test cases, but all of these are
dg-execute testcases. They are compiled, linked and executed by default. These
testcases are also compiled with the matrix of torture options.

The only caveat here is that gccrs does not currently support the main shim,
so we have a C-style main function here returning zero which is not proper Rust
code.

gcc/testsuite/
* rust/execute/torture/block_expr1.rs: New.
* rust/execute/torture/builtin_macro_cfg.rs: New.
* rust/execute/torture/builtin_macro_concat.rs: New.
* rust/execute/torture/builtin_macro_env.rs: New.
* rust/execute/torture/builtin_macro_include_bytes.rs: New.
* rust/execute/torture/builtin_macro_include_str.rs: New.
* rust/execute/torture/builtin_macro_line.rs: New.
* rust/execute/torture/builtin_macros1.rs: New.
* rust/execute/torture/builtin_macros3.rs: New.
* rust/execute/torture/cfg1.rs: New.
* rust/execute/torture/cfg2.rs: New.
* rust/execute/torture/cfg3.rs: New.
* rust/execute/torture/cfg4.rs: New.
* rust/execute/torture/cfg5.rs: New.
* rust/execute/torture/coercion1.rs: New.
* rust/execute/torture/coercion2.rs: New.
* rust/execute/torture/const_fold1.rs: New.
* rust/execute/torture/const_fold2.rs: New.
* rust/execute/torture/copy_nonoverlapping1.rs: New.
* rust/execute/torture/empty_main.rs: New.
* rust/execute/torture/execute.exp: New.
* rust/execute/torture/exit_error.rs: New.
* rust/execute/torture/extern_mod4.rs: New.
* rust/execute/torture/func1.rs: New.
* rust/execute/torture/helloworld1.rs: New.
* rust/execute/torture/helloworld2.rs: New.
* rust/execute/torture/include.txt: New.
* rust/execute/torture/index1.rs: New.
* rust/execute/torture/issue-1120.rs: New.
* rust/execute/torture/issue-1133.rs: New.
* rust/execute/torture/issue-1198.rs: New.
* rust/execute/torture/issue-1231.rs: New.
* rust/execute/torture/issue-1232.rs: New.
* rust/execute/torture/issue-1249.rs: New.
* rust/execute/torture/issue-1436.rs: New.
* rust/execute/torture/issue-1496.rs: New.
* rust/execute/torture/issue-647.rs: New.
* rust/execute/torture/issue-845.rs: New.
* rust/execute/torture/issue-851.rs: New.
* rust/execute/torture/issue-858.rs: New.
* rust/execute/torture/issue-976.rs: New.
* rust/execute/torture/issue-995.rs: New.
* rust/execute/torture/macros1.rs: New.
* rust/execute/torture/macros10.rs: New.
* rust/execute/torture/macros11.rs: New.
* rust/execute/torture/macros12.rs: New.
* rust/execute/torture/macros13.rs: New.
* rust/execute/torture/macros14.rs: New.
* rust/execute/torture/macros16.rs: New.
* rust/execute/torture/macros17.rs: New.
* rust/execute/torture/macros18.rs: New.
* rust/execute/torture/macros19.rs: New.
* rust/execute/torture/macros2.rs: New.
* rust/execute/torture/macros20.rs: New.
* rust/execute/torture/macros21.rs: New.
* rust/execute/torture/macros22.rs: New.
* rust/execute/torture/macros23.rs: New.
* rust/execute/torture/macros24.rs: New.
* rust/execute/torture/macros25.rs: New.
* rust/execute/torture/macros26.rs: New.
* rust/execute/torture/macros27.rs: New.
* rust/execute/torture/macros28.rs: New.
* rust/execute/torture/macros29.rs: New.
* rust/execute/torture/macros3.rs: New.
* rust/execute/torture/macros30.rs: New.
* rust/execute/torture/macros31.rs: New.
* rust/execute/torture/macros4.rs: New.
* rust/execute/torture/macros5.rs: New.
* rust/execute/torture/macros6.rs: New.
* rust/execute/torture/macros7.rs: New.
* rust/execute/torture/macros8.rs: New.
* rust/execute/torture/macros9.rs: New.
* rust/execute/torture/match1.rs: New.
* rust/execute/torture/match2.rs: New.
* rust/execute/torture/match3.rs: New.
* rust/execute/torture/match_bool1.rs: New.
* rust/execute/torture/match_byte1.rs: New.
* rust/execute/torture/match_char1.rs: New.
* rust/execute/torture/match_int1.rs: New.
* rust/execute/torture/match_loop1.rs: New.
* rust/execute/torture/match_range1.rs: New.
* rust/execute/torture/match_range2.rs: New.
* rust/execute/torture/match_tuple1.rs: New.
* rust/execute/torture/method1.rs: New.
* rust/execute/torture/method2.rs: New.
* rust/execute/torture/method3.rs: New.
* rust/execute/torture/method4.rs: New.
* rust/execute/torture/mod1.rs: New.
* rust/execute/torture/modules/mod.rs: New.
* rust/execute/torture/operator_overload_1.rs: New.
* rust/execute/torture/operator_overload_10.rs: New.
* rust/execute/torture/operator_overload_11.rs: New.
* rust/execute/torture/operator_overload_12.rs: New.
* rust/execute/torture/operator_overload_2.rs: New.
* rust/execute/torture/operator_overload_3.rs: New.
* rust/execute/torture/operator_overload_4.rs: New.
* rust/execute/torture/operator_overload_5.rs: New.
* rust/execute/torture/operator_overload_6.rs: New.
* rust/execute/torture/operator_overload_7.rs: New.
* rust/execute/torture/operator_overload_8.rs: New.
* rust/execute/torture/operator_overload_9.rs: New.
* rust/execute/torture/slice-magic.rs: New.
* rust/execute/torture/slice-magic2.rs: New.
* rust/execute/torture/slice1.rs: New.
* rust/execute/torture/str-layout1.rs: New.
* rust/execute/torture/str-zero.rs: New.
* rust/execute/torture/trait1.rs: New.
* rust/execute/torture/trait10.rs: New.
* rust/execute/torture/trait11.rs: New.
* rust/execute/torture/trait12.rs: New.
* rust/execute/torture/trait13.rs: New.
* rust/execute/torture/trait2.rs: New.
* rust/execute/torture/trait3.rs: New.
* rust/execute/torture/trait4.rs: New.
* rust/execute/torture/trait5.rs: New.
* rust/execute/torture/trait6.rs: New.
* rust/execute/torture/trait7.rs: New.
* rust/execute/torture/trait8.rs: New.
* rust/execute/torture/trait9.rs: New.
* rust/execute/torture/transmute1.rs: New.
* rust/execute/torture/wrapping_op1.rs: New.
* rust/execute/torture/wrapping_op2.rs: New.
* rust/execute/xfail/macro1.rs: New.

Co-authored-by: Arthur Cohen <arthur.cohen@embecosm.com>
Co-authored-by: Thomas Schwinge <thomas@codesourcery.com>
Co-authored-by: Mark Wielaard <mark@klomp.org>
Co-authored-by: Marc Poulhiès <dkm@kataplop.net>
123 files changed:
gcc/testsuite/rust/execute/torture/block_expr1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macro_cfg.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macro_concat.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macro_env.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macro_include_bytes.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macro_include_str.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macro_line.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macros1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/builtin_macros3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/cfg1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/cfg2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/cfg3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/cfg4.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/cfg5.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/coercion1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/coercion2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/const_fold1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/const_fold2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/copy_nonoverlapping1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/empty_main.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/execute.exp [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/exit_error.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/extern_mod4.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/func1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/helloworld1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/helloworld2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/include.txt [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/index1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1120.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1133.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1198.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1231.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1232.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1249.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1436.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-1496.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-647.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-845.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-851.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-858.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-976.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/issue-995.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros10.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros11.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros12.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros13.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros14.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros16.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros17.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros18.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros19.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros20.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros21.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros22.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros23.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros24.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros25.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros26.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros27.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros28.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros29.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros30.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros31.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros4.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros5.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros6.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros7.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros8.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/macros9.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_bool1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_byte1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_char1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_int1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_loop1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_range1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_range2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/match_tuple1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/method1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/method2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/method3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/method4.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/mod1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/modules/mod.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_10.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_11.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_12.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_4.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_5.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_6.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_7.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_8.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/operator_overload_9.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/slice-magic.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/slice-magic2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/slice1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/str-layout1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/str-zero.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait10.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait11.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait12.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait13.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait3.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait4.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait5.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait6.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait7.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait8.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/trait9.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/transmute1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/wrapping_op1.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/torture/wrapping_op2.rs [new file with mode: 0644]
gcc/testsuite/rust/execute/xfail/macro1.rs [new file with mode: 0644]