Skip to content

datetime tests fail in release mode since 1.73 on powerpc64le #116582

Closed
@cuviper

Description

@cuviper

The datetime tests have regressed on Fedora ppc64le since upgrading to Rust 1.73.0, and I can also reproduce this on rustup toolchains.
https://koschei.fedoraproject.org/build/16447830

I expected to see this happen: all tests pass

Instead, this happened: it passes in debug mode, but fails multiple tests in --release. For example:

$ cargo test --test instant_to_datetime --release -- the_end_of_time
[...]
     Running tests/instant_to_datetime.rs (target/release/deps/instant_to_datetime-dc863ddaa1b40632)

running 1 test
test the_end_of_time ... FAILED

failures:

---- the_end_of_time stdout ----
thread 'the_end_of_time' panicked at tests/instant_to_datetime.rs:80:5:
assertion `left == right` failed
  left: -1
 right: 7

Version it worked on

It most recently worked on: 1.72.1

Version with regression

rustc --version --verbose:

rustc 1.73.0 (cc66ad468 2023-10-03)
binary: rustc
commit-hash: cc66ad468955717ab92600c770da8c1601a4ff33
commit-date: 2023-10-03
host: powerpc64le-unknown-linux-gnu
release: 1.73.0
LLVM version: 17.0.2

It's no better on rustc 1.74.0-beta.1 (b5c050feb 2023-10-03) or rustc 1.75.0-nightly (bf9a1c8a1 2023-10-08).

As noted above, it also fails on Fedora rawhide's Rust 1.73.0 with LLVM 17. However, it passes on Fedora 38 with Rust 1.73.0 and LLVM 16, so it definitely seems like a codegen regression in 17.

@rustbot modify labels: +A-LLVM +T-compiler +regression-from-stable-to-stable -regression-untriaged

Metadata

Metadata

Assignees

Labels

A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.C-bugCategory: This is a bug.I-unsoundIssue: A soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/SoundnessO-PowerPCTarget: PowerPC processorsP-highHigh priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions