Rev |
Log message |
Author |
Age |
Path |
1144 |
Speed up gdb when running with serial targets:
When generating backtraces, the prologue of each function is scanned
at least three times by architecture-independent code, e.g. to
determine offsets of saved registers, identify frameless functions,
etc. This new code adds straightforward caching of the information
gleaned by or1k_scan_prologue() on a per-frame basis rather than
storing it in global static variables. (This benefits both JTAG and
serial gdb targets, though the JTAG target runs fast enough that it is
not particularly needed.)
When the register set is dumped by the serial target, e.g. at any
breakpoint or interrupt, the 32 vector/FP registers were included in
the dump (each 8 bytes long), though they aren't implemented. The new
code tells gdb that unimplemented registers have zero length in the
dump. |
sfurman |
7793d 17h |
/or1k/tags/nog_patch_65/ |
1143 |
Make UART transmitter-empty interrupts match both 16450 and 16550 behavior. |
sfurman |
7794d 07h |
/or1k/tags/nog_patch_65/ |
1142 |
Speed up gdb when running with serial targets:
When generating backtraces, the prologue of each function is scanned
at least three times by architecture-independent code, e.g. to
determine offsets of saved registers, identify frameless functions,
etc. This new code adds straightforward caching of the information
gleaned by or1k_scan_prologue() on a per-frame basis rather than
storing it in global static variables. (This benefits both JTAG and
serial gdb targets, though the JTAG target runs fast enough that it is
not particularly needed.)
When the register set is dumped by the serial target, e.g. at any
breakpoint or interrupt, the 32 vector/FP registers were included in
the dump (each 8 bytes long), though they aren't implemented. The new
code tells gdb that unimplemented registers have zero length in the
dump. |
sfurman |
7794d 07h |
/or1k/tags/nog_patch_65/ |
1141 |
WB = 1/2 RISC clock test code enabled. |
lampret |
7795d 16h |
/or1k/tags/nog_patch_65/ |
1140 |
Fixed OR1200_CLKDIV_x_SUPPORTED defines. Fixed order of ifdefs. |
lampret |
7795d 17h |
/or1k/tags/nog_patch_65/ |
1139 |
Fixed OR1200_CLKDIV_x_SUPPORTED defines. Better description. |
lampret |
7795d 17h |
/or1k/tags/nog_patch_65/ |
1138 |
Added some information how to run simulations. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1137 |
Added RFRAM generic and Altera lpm library. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1136 |
Add altera lpm library. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1135 |
Added get_gpr support for OR1200_RFRAM_GENERIC |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1134 |
Changed location of debug test code to 0. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1133 |
Adding OR1200_CLMODE_1TO2 test code. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1132 |
RFRAM defines comments updated. Altera LPM option added. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1131 |
Added another pipe stage to match gmult. One day second pipe in amult and gmult might be removed to get better performance. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1130 |
RFRAM type always need to be defined. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1129 |
Added Altera LPM RAMs. Changed generic RAM output when OE inactive. |
lampret |
7796d 12h |
/or1k/tags/nog_patch_65/ |
1128 |
Fixed my bustage: Add missing 2nd argument to open(). Otherwise,
opening a serial port channel can sporadically fail. |
sfurman |
7801d 11h |
/or1k/tags/nog_patch_65/ |
1127 |
Added ability to map I/O from simulated UARTs to physical serial ports
on the host running the simulator. |
sfurman |
7804d 12h |
/or1k/tags/nog_patch_65/ |
1126 |
Added lengthy comment explaining all possible choices for UART
channels, e.g. xterm, tcp, file, etc. |
sfurman |
7806d 14h |
/or1k/tags/nog_patch_65/ |
1125 |
This test case passes. |
lampret |
7817d 18h |
/or1k/tags/nog_patch_65/ |
1124 |
Initialize or1k_implementation with reasonable defaults for the number
of implementation registers. This doesn't affect the jtag or sim
targets at all because those values are always overwritten when
or1k_implementation is initialized. However, it is necessary when
connecting to remote gdb stubs through a serial port or socket, since
or1k_implementation is not yet initialized for those targets. |
sfurman |
7827d 10h |
/or1k/tags/nog_patch_65/ |
1123 |
Renumber/rename SPRs to match latest architecture doc |
sfurman |
7828d 16h |
/or1k/tags/nog_patch_65/ |
1122 |
Get rid of C++ style declarations (which can appear in the middle of a block) in C program. Some older compilers complain. |
sfurman |
7833d 17h |
/or1k/tags/nog_patch_65/ |
1121 |
Ignore generated files |
sfurman |
7833d 18h |
/or1k/tags/nog_patch_65/ |
1120 |
Fix my dumb automake bustage |
sfurman |
7833d 18h |
/or1k/tags/nog_patch_65/ |
1119 |
1) Fix the "channels:xterm" feature so that it functions on linux.
The existing implementation relies on SysV STREAMS behavior that
Linux does not possess.
2) Allow arguments to be passed to the xterm from the sim.cfg file,
e.g. to set the window dimensions or fonts.
3) Add the ability for a program to interact with the simulator UART
through a TCP socket. |
sfurman |
7834d 14h |
/or1k/tags/nog_patch_65/ |
1118 |
1) Fix the "channels:xterm" feature so that it functions on linux.
The existing implementation relies on SysV STREAMS behavior that
Linux does not possess.
2) Allow arguments to be passed to the xterm from the sim.cfg file,
e.g. to set the window dimensions or fonts.
3) Add the ability for a program to interact with the simulator UART
through a TCP socket. |
sfurman |
7834d 14h |
/or1k/tags/nog_patch_65/ |
1117 |
Ignore generated files for CVS purposes |
sfurman |
7834d 15h |
/or1k/tags/nog_patch_65/ |
1116 |
There was a bug in the simulator's UART implementation that caused the
UART's LSR register to become corrupted. This was due to an
assumption that 'char' is an unsigned type, but that is not true on
all platforms.
When the char type is signed and a character is read in the range
0x80-0xff, the high bit is sign-extended into the upper bits of an
entry in the receive FIFO. When the character reaches the head of the
FIFO, the upper bits of the FIFO entry are OR'ed into the LSR, causing
the LSR to be set to 0xFF.
A simple cast fixes the problem. |
sfurman |
7834d 15h |
/or1k/tags/nog_patch_65/ |
1115 |
Fix stack-walking code in or1k_frame_chain() and or1k_skip_prologue()
to expect the function prologue that or32 gcc currently emits, rather
than a previous incarnation of the or1k ABI. |
sfurman |
7850d 14h |
/or1k/tags/nog_patch_65/ |