These are changes from two commits from the upstream clink repo (https://github.com/mkostoevr/clink) and one commit from the upstream epep repo (https://github.com/mkostoevr/epep).
clink:
Commit e63ed12ead17e47d77e848da0e7b9f4dd3ad5127
Bugfix: Make it able to write more than 64k - 1 COFF relocations
If the relocation count is greater than 0xffff then it can't fit
in the NumberOfRelocations field of a section header. In order to
specify greater relocation count IMAGE_SCN_LNK_NRELOC_OVFL flag
should be added to Characteristics and the actual relocation count
should be written into VirtualAddress field of the first COFF
relocation.
Commit 328fc3112a30fcaa808f2cad34028a6507d602a3
Bugfix: Make it able to read more than 64k - 1 COFF relocations
New EPEP API allows to read more than 64k - 1 relocations. Use it
when reading relocation count for filling SectionInfo and when
reading relocations for wriring the output file.
epep:
Commit 3bed4e348a486c346d0a452c58c1d85e1805c09d
Feature: Higher-level COFF relocations API
Number of COFF relocations of a section is stored in the 16-bit
NumberOfRelocations field of a section header. If a COFF object has
more than 2^16 - 1 relocations, then the value does not fit in the
field.
To solve this problem, IMAGE_SCN_LNK_NRELOC_OVFL flag of a section
header has been introduced. If this flag is set for the section,
then the actual number of relocations is stored in the
VirtualAddress field of the first relocation.
If the flag is set, then NumberOfRelocations field of the section
header should be equal to 0xffff, othervice the linker should give
an error.
So this patch introduces few functions adressing this mechanism.
epep_section_contains_extended_relocations:
Checks whether the section has more than 2^16 - 1 relocations.
Retrns error if the IMAGE_SCN_LNK_NRELOC_OVFL flag is set, but
the NumberOfRelocations field is not equal to 0xffff.
epep_get_section_extended_number_of_relocations:
Reads the number of COFF relocations from the VirtualAddress
field of the first COFF relocation.
epep_get_section_number_of_relocations_x:
Gives the number of meaningful relocations of the section.
If the section has less than 2^16 relocations, then returns the
value of the NumberOfRelocations field of the section header,
othervice reads the number of relocations from the first COFF
relocation, but: since the first relocation in this case is not
meaningful, gives the actual number of relocations minus one.
This is used in the function documented below.
Returns 1 in the last argument if the section contains extended
number of relocations, 0 othervice.
epep_get_section_relocation_by_index_x:
If the section has less than 2^16 relocations, then just reads
a relocation by the given index. In case if the section has
extended number of relocations, the first relocation is not
meaningful, so it is skipped, and the relocation at index + 1
is read instead.
git-svn-id: svn://kolibrios.org@9927 a494cfbc-eb01-0410-851d-a64ba20cac60
- faster loading of real constants into registers
- deleting unnecessary files
git-svn-id: svn://kolibrios.org@9873 a494cfbc-eb01-0410-851d-a64ba20cac60
- now using vsscanf from BaseLibc;
- delete extra pragma
- disable sort includes(clang-format)
git-svn-id: svn://kolibrios.org@9868 a494cfbc-eb01-0410-851d-a64ba20cac60
- Fixed create .dgen dir bug;
- Disable debug output;
- Moved all build definitions to config.h.
git-svn-id: svn://kolibrios.org@9840 a494cfbc-eb01-0410-851d-a64ba20cac60
- KSYS_SLOT_STATE_FREE has right value (9, not 6) now
- few style changes (snake_case)
git-svn-id: svn://kolibrios.org@9830 a494cfbc-eb01-0410-851d-a64ba20cac60
Weather app was moved to /kolibrios a year ago, move its config there
too. There is no reason for the config to be in img since nobody in img
uses it.
Also, update Weather to look for its config not only in /sys but also
in /kolibrios.
git-svn-id: svn://kolibrios.org@9820 a494cfbc-eb01-0410-851d-a64ba20cac60
- headers update (now used true functions with attributes instead of pointers)
- fixed some samples
kos_mbedtls:
microtar:
changes for compatible to latest version tcc and the libc.obj headers
git-svn-id: svn://kolibrios.org@9812 a494cfbc-eb01-0410-851d-a64ba20cac60
- Code refactoring
- Optimization of code (for example, log2(n) searching) and memory usage
- Some possible memory corruption fixed
- Previous graph will be erased from window if error occured
- Fixed bug with provided array of non-sorted points: so now you can pass points in any order
- Fixed important bug with graphic rendering (big thanks to turbocat for asm rounding function)
- Changed error messages; now you can see line/byte of file where syntax error is; added checking if provided frame of graph is invalid
- Autochoosing of an optimal single step for both axises
- Added support for reading any number of different functions. You will have to end previous function with ';' if you want to pass another one. They will be rendered on a graph in order you passed them.
git-svn-id: svn://kolibrios.org@9778 a494cfbc-eb01-0410-851d-a64ba20cac60
- Added inttypes header;
- Fixed warnings in mouse api wrappers;
- Preparation for build only via tcc+fasm.
git-svn-id: svn://kolibrios.org@9774 a494cfbc-eb01-0410-851d-a64ba20cac60
- Added to Newlib and should be in sync with the file from libc.obj;
- Added new wrappers.
git-svn-id: svn://kolibrios.org@9767 a494cfbc-eb01-0410-851d-a64ba20cac60
Graph (branch: tcc_current):
- Rewritten in C so now it can be compiled with tcc.
- Added functions: pow (^) and mod (%), arcctg, sgn, sec, cosec, log2, log3, log10.
- Added aliases for functions: tan, cot, arctan, arccot, lg, lb, ln.
- Fixed bugs with box_lib's edit_box.
- Removed deprecated/potentially unused code.
- Now an "Edit" button launches Cedit, not Tinypad.
- Now there is a better graph rendering: fixed bugs with text drawing.
- Added to autobuild list and in iso.
git-svn-id: svn://kolibrios.org@9762 a494cfbc-eb01-0410-851d-a64ba20cac60
1) Now shows the full value for the year
2) For ".." dir is not shown unnecessary data
3) Finding the end of section [icons16] for r7241
git-svn-id: svn://kolibrios.org@9728 a494cfbc-eb01-0410-851d-a64ba20cac60