Skip to content

Commit 02da10e

Browse files
committed
Import further Clang-defined ia32 builtins
Imported using `clang_builtins.py` and filtered to make sure the declarations aren't present in one of the existing files.
1 parent 1e50c4c commit 02da10e

File tree

7 files changed

+571
-2
lines changed

7 files changed

+571
-2
lines changed

src/ansi-c/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ make_inc(compiler_headers/gcc_builtin_headers_ia32-2)
6565
make_inc(compiler_headers/gcc_builtin_headers_ia32-3)
6666
make_inc(compiler_headers/gcc_builtin_headers_ia32-4)
6767
make_inc(compiler_headers/gcc_builtin_headers_ia32-5)
68+
make_inc(compiler_headers/gcc_builtin_headers_ia32-6)
6869
make_inc(compiler_headers/gcc_builtin_headers_math)
6970
make_inc(compiler_headers/gcc_builtin_headers_mem_string)
7071
make_inc(compiler_headers/gcc_builtin_headers_mips)
@@ -88,6 +89,7 @@ set(extra_dependencies
8889
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_ia32-3.inc
8990
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_ia32-4.inc
9091
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_ia32-5.inc
92+
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_ia32-6.inc
9193
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_ia32.inc
9294
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_math.inc
9395
${CMAKE_CURRENT_BINARY_DIR}/compiler_headers/gcc_builtin_headers_mem_string.inc

src/ansi-c/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ BUILTIN_FILES = \
6060
compiler_headers/gcc_builtin_headers_ia32-3.inc \
6161
compiler_headers/gcc_builtin_headers_ia32-4.inc \
6262
compiler_headers/gcc_builtin_headers_ia32-5.inc \
63+
compiler_headers/gcc_builtin_headers_ia32-6.inc \
6364
compiler_headers/gcc_builtin_headers_ia32.inc \
6465
compiler_headers/gcc_builtin_headers_math.inc \
6566
compiler_headers/gcc_builtin_headers_mem_string.inc \

src/ansi-c/ansi_c_internal_additions.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,9 @@ const char gcc_builtin_headers_ia32_4[] =
7373
const char gcc_builtin_headers_ia32_5[] =
7474
#include "compiler_headers/gcc_builtin_headers_ia32-5.inc" // IWYU pragma: keep
7575
; // NOLINT(whitespace/semicolon)
76+
const char gcc_builtin_headers_ia32_6[] =
77+
#include "compiler_headers/gcc_builtin_headers_ia32-6.inc" // IWYU pragma: keep
78+
; // NOLINT(whitespace/semicolon)
7679

7780
const char gcc_builtin_headers_alpha[] =
7881
"#line 1 \"gcc_builtin_headers_alpha.h\"\n"

src/ansi-c/ansi_c_internal_additions.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ extern const char gcc_builtin_headers_ia32_2[];
3030
extern const char gcc_builtin_headers_ia32_3[];
3131
extern const char gcc_builtin_headers_ia32_4[];
3232
extern const char gcc_builtin_headers_ia32_5[];
33+
extern const char gcc_builtin_headers_ia32_6[];
3334
extern const char gcc_builtin_headers_alpha[];
3435
extern const char gcc_builtin_headers_arm[];
3536
extern const char gcc_builtin_headers_mips[];

src/ansi-c/builtin_factory.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,9 @@ bool builtin_factory(
179179

180180
if(find_pattern(pattern, gcc_builtin_headers_ia32_5, s))
181181
return convert(identifier, s, symbol_table, mh);
182+
183+
if(find_pattern(pattern, gcc_builtin_headers_ia32_6, s))
184+
return convert(identifier, s, symbol_table, mh);
182185
}
183186
else if(config.ansi_c.arch=="arm64" ||
184187
config.ansi_c.arch=="armel" ||

src/ansi-c/compiler_headers/clang_builtins.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
'v': 'void',
4444
'w': 'wchar_t',
4545
'x': '_Float16',
46-
'y': '__bf16',
46+
'y': '_Float16', # would be '__bf16', but we don't support that yet
4747
'z': '__CPROVER_size_t'
4848
}
4949

@@ -209,7 +209,7 @@ def process_line(name, types, attributes):
209209
i = 0
210210
while i < len(types):
211211
(t, i_updated) = build_type(types, i)
212-
assert i_updated > i, ('failed to parse type spec of' + name + ': ' +
212+
assert i_updated > i, ('failed to parse type spec of ' + name + ': ' +
213213
types[i:])
214214
i = i_updated
215215
type_specs.append(t)

src/ansi-c/compiler_headers/gcc_builtin_headers_ia32-6.h

Lines changed: 559 additions & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)