RISC OS Open
Safeguarding the past, present and future of RISC OS for everyone
ROOL
Home | News | Downloads | Bugs | Bounties | Forum | Documents | Photos | Contact us
Account

Previous|Next

  • Tickets
  • » Ticket #319

Ticket #319 (Fixed)Tue Oct 02 12:55:19 UTC 2012

CMHG veneers fail to switch to SVC mode when called from SYS mode

Reported by: Jeffrey Lee (213) Severity: Normal
Part: RISC OS: C/C++ toolchain Release:
Milestone: Status Fixed

Details by Jeffrey Lee (213):

The veneers produced by the current version of CMHG manipulate the PSR only by modifying the bottom two bits of the mode field. This means that if a veneer is called from a mode which has bits 2 or 3 set (MON, ABT, UND, SYS, etc.) the veneer will fail to switch mode correctly. This can cause issues with calling code from RTSupport routines, especially since the C static relocation offsets are likely to be written to the wrong place due to the stack not being on a MB boundary (e.g. as here)

Changelog:

Modified by Jeffrey Lee (213) Tue, October 02 2012 - 20:53:17 GMT

Now that I’m at home to check: This was found in CMHG 5.42.

Modified by Jeffrey Lee (213) Sun, November 02 2014 - 13:56:54 GMT

  • Status changed from Open to Fixed

Fixed with cmhg 5.43 (DDE 25)

  • Comment on, or change status of, this ticket

Previous|Next

Search tickets

Social

Follow us on and

ROOL Store

Buy RISC OS Open merchandise here, including SD cards for Raspberry Pi and more.

Donate! Why?

Help ROOL make things happen – please consider donating!

RISC OS IPR

RISC OS is an Open Source operating system owned by RISC OS Developments Ltd and licensed primarily under the Apache 2.0 license.

Options

  • Tickets
  • New ticket
  • Milestones
  • Subversion: Changesets
  • Subversion: Browse
  • CVS: Revisions
  • CVS: Browse
  • Search

RSS feeds Rss

  • Tickets
  • Everything!
  • More feeds...
Site design © RISC OS Open Limited 2018 except where indicated
The RISC OS Open Collaboa theme is distantly based on the Collaboa default layout

Valid XHTML 1.0  |  Valid CSS

Powered by Collaboa
This site runs on Rails

Hosted by Arachsys