Message Font: Serif | Sans-Serif
No. of Recommendations: 0
The machine also had a single cycle button and we got up to the offending instruction, and single cycled through it and saw it happen. I pulled out the wiring diagram of the computer, figured out what had to be the problem, and replaced a transistor on a circuit board to fix it. My boss was amazed because he thought I was only a programmer.

In the last twenty years, I've found more problems in h/w than in software, which I suppose says good things about the compilers. The regression test suites have gotten very good, I think, and apparently are very effective.

For hardware errors, I've seen one where a return with four consecutive 1 bits in the return address would fail. I've seen another where running a memory test of my own authoring would power down the processor -- but only if run on all four CPUs.

As you say, however, the biggest "problem" with optimizers is that what they do with incorrect programs is undefined. Fortunately, the compilers and optimizers have gotten much better in that respect as well, with compilers now doing considerably more analysis than 'lint' and similar programs used to do. They're good at finding uninitialized variables, resource leaks, &c, although they tend to generate a lot of spurious warnings.
Print the post  


When Life Gives You Lemons
We all have had hardships and made poor decisions. The important thing is how we respond and grow. Read the story of a Fool who started from nothing, and looks to gain everything.
Contact Us
Contact Customer Service and other Fool departments here.
Work for Fools?
Winner of the Washingtonian great places to work, and Glassdoor #1 Company to Work For 2015! Have access to all of TMF's online and email products for FREE, and be paid for your contributions to TMF! Click the link and start your Fool career.