Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1248037 - pure fails with "Illegal instruction" on ppc64le
Summary: pure fails with "Illegal instruction" on ppc64le
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: pure
Version: 22
Hardware: ppc64le
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Michel Alexandre Salim
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F-ExcludeArch-ppc64le, PPC64LETracker
TreeView+ depends on / blocked
 
Reported: 2015-07-29 13:24 UTC by Rafael Fonseca
Modified: 2016-07-19 17:15 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-07-19 17:15:09 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
GDB log (3.06 KB, text/plain)
2015-07-29 13:24 UTC, Rafael Fonseca
no flags Details
core dump (16.19 MB, application/x-core)
2015-07-29 13:26 UTC, Rafael Fonseca
no flags Details
strace log (38.63 KB, text/plain)
2015-07-29 13:26 UTC, Rafael Fonseca
no flags Details

Description Rafael Fonseca 2015-07-29 13:24:50 UTC
Created attachment 1057320 [details]
GDB log

Description of problem: running pure on a ppc64le machine results in an Illegal instruction error message.


Version-Release number of selected component (if applicable): 0.64


How reproducible: just run pure on a ppc64le machine.


Actual results: Illegal instruction


Additional info: gdb log, strace output and core dump attached.

Comment 1 Rafael Fonseca 2015-07-29 13:26:17 UTC
Created attachment 1057321 [details]
core dump

Comment 2 Rafael Fonseca 2015-07-29 13:26:56 UTC
Created attachment 1057322 [details]
strace log

Comment 3 Rafael Fonseca 2015-07-29 13:49:32 UTC
On a related note, it also fails on ppc64be with a different error though:

LLVM ERROR: Cannot select: 0x10021d89cf8: ch = PPCISD::TC_RETURN 0x10021d8ff28, 0x10021d891a0, 0x10021d95968, 0x10021d8c330, 0x10021d90f98, 0x10021d92120, 0x10021d8ff28:1 [ORD=6] [ID=60]
  0x10021d891a0: i64 = Register %X11 [ID=8]
  0x10021d95968: i64 = Register %CTR8 [ID=13]
  0x10021d8c330: i32 = Constant<0> [ID=14]
  0x10021d90f98: i64 = Register %X3 [ID=7]
  0x10021d92120: Untyped = RegisterMask [ID=10]
  0x10021d8ff28: ch,glue = PPCISD::MTCTR 0x10021d8e6d8, 0x10021d8be30, 0x10021d8e6d8:1 [ORD=6] [ID=59]
    0x10021d8be30: i64,ch,glue = PPCISD::LOAD 0x10021d8c858, 0x10021d92540, 0x10021d8c858:1 [ORD=6] [ID=55]
      0x10021d92540: i64 = PPCISD::TOC_ENTRY 0x10021d92018, 0x10021d8bb18 [ORD=6] [ID=21]
        0x10021d92018: i64 = TargetGlobalAddress<%struct.__pure__expr* (%struct.__pure__expr*)* @"$$fastcc.$$type.real"> 0 [ORD=6] [ID=15]
        0x10021d8bb18: i64 = Register %X2 [ID=16]
      0x10021d8c858: ch,glue = callseq_end 0x10021d91bf8, 0x10021d8cb70, 0x10021d8b1d0 [ORD=6] [ID=54]
        0x10021d8cb70: i64 = TargetConstant<112> [ID=5]
        0x10021d8b1d0: i64 = TargetConstant<0> [ID=12]
    0x10021d8e6d8: ch,glue = PPCISD::LOAD_TOC 0x10021d92d10, 0x10021d8d098, 0x10021d92d10:1 [ORD=6] [ID=58]
      0x10021d8d098: i64 = add 0x10021d92540, 0x10021d90d88 [ORD=6] [ID=26]
        0x10021d92540: i64 = PPCISD::TOC_ENTRY 0x10021d92018, 0x10021d8bb18 [ORD=6] [ID=21]
          0x10021d92018: i64 = TargetGlobalAddress<%struct.__pure__expr* (%struct.__pure__expr*)* @"$$fastcc.$$type.real"> 0 [ORD=6] [ID=15]
          0x10021d8bb18: i64 = Register %X2 [ID=16]
        0x10021d90d88: i64 = Constant<8> [ID=9]
      0x10021d92d10: ch,glue = CopyToReg 0x10021d89e00:1, 0x10021d891a0, 0x10021d89e00, 0x10021d89e00:2 [ORD=6] [ID=57]
        0x10021d891a0: i64 = Register %X11 [ID=8]
        0x10021d89e00: i64,ch,glue = PPCISD::LOAD 0x10021d8be30:1, 0x10021d90450, 0x10021d8be30:2 [ORD=6] [ID=56]
          0x10021d90450: i64 = add 0x10021d92540, 0x10021d92750 [ORD=6] [ID=25]
            0x10021d92540: i64 = PPCISD::TOC_ENTRY 0x10021d92018, 0x10021d8bb18 [ORD=6] [ID=21]
              0x10021d92018: i64 = TargetGlobalAddress<%struct.__pure__expr* (%struct.__pure__expr*)* @"$$fastcc.$$type.real"> 0 [ORD=6] [ID=15]
              0x10021d8bb18: i64 = Register %X2 [ID=16]
            0x10021d92750: i64 = Constant<16> [ID=2]
          0x10021d8be30: i64,ch,glue = PPCISD::LOAD 0x10021d8c858, 0x10021d92540, 0x10021d8c858:1 [ORD=6] [ID=55]
            0x10021d92540: i64 = PPCISD::TOC_ENTRY 0x10021d92018, 0x10021d8bb18 [ORD=6] [ID=21]
              0x10021d92018: i64 = TargetGlobalAddress<%struct.__pure__expr* (%struct.__pure__expr*)* @"$$fastcc.$$type.real"> 0 [ORD=6] [ID=15]
              0x10021d8bb18: i64 = Register %X2 [ID=16]
            0x10021d8c858: ch,glue = callseq_end 0x10021d91bf8, 0x10021d8cb70, 0x10021d8b1d0 [ORD=6] [ID=54]
              0x10021d8cb70: i64 = TargetConstant<112> [ID=5]
              0x10021d8b1d0: i64 = TargetConstant<0> [ID=12]
        0x10021d89e00: i64,ch,glue = PPCISD::LOAD 0x10021d8be30:1, 0x10021d90450, 0x10021d8be30:2 [ORD=6] [ID=56]
          0x10021d90450: i64 = add 0x10021d92540, 0x10021d92750 [ORD=6] [ID=25]
            0x10021d92540: i64 = PPCISD::TOC_ENTRY 0x10021d92018, 0x10021d8bb18 [ORD=6] [ID=21]
              0x10021d92018: i64 = TargetGlobalAddress<%struct.__pure__expr* (%struct.__pure__expr*)* @"$$fastcc.$$type.real"> 0 [ORD=6] [ID=15]
              0x10021d8bb18: i64 = Register %X2 [ID=16]
            0x10021d92750: i64 = Constant<16> [ID=2]
          0x10021d8be30: i64,ch,glue = PPCISD::LOAD 0x10021d8c858, 0x10021d92540, 0x10021d8c858:1 [ORD=6] [ID=55]
            0x10021d92540: i64 = PPCISD::TOC_ENTRY 0x10021d92018, 0x10021d8bb18 [ORD=6] [ID=21]
              0x10021d92018: i64 = TargetGlobalAddress<%struct.__pure__expr* (%struct.__pure__expr*)* @"$$fastcc.$$type.real"> 0 [ORD=6] [ID=15]
              0x10021d8bb18: i64 = Register %X2 [ID=16]
            0x10021d8c858: ch,glue = callseq_end 0x10021d91bf8, 0x10021d8cb70, 0x10021d8b1d0 [ORD=6] [ID=54]
              0x10021d8cb70: i64 = TargetConstant<112> [ID=5]
              0x10021d8b1d0: i64 = TargetConstant<0> [ID=12]
In function: $$fastcc.$$type.real

Comment 4 Michel Alexandre Salim 2015-08-14 09:25:42 UTC
Thanks for the report. Will add it to ExcludeArch for now - been meaning to wait until there's a version that's buildable on F23 / rawhide (LLVM JIT changes) but upstream said it might take until the end of summer before one is available.

Comment 5 Fedora End Of Life 2016-07-19 17:15:09 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.