godot/core
marxin 64bce5a24b Use GCC builtins for bswap as compiler can then emit these via instructions.
Using current macros, one get for:

static inline int BSWAP32(int x) {
	return ((x << 24) | ((x << 8) & 0x00FF0000) | ((x >> 8) & 0x0000FF00) | (x >> 24));
}
int main(int argc, char **argv)
{
  return BSWAP32(argc);
}

main:
.LFB1:
	.cfi_startproc
	movl	%edi, %eax
	movl	%edi, %edx
	sarl	$24, %edx
	sall	$24, %eax
	orl	%edx, %eax
	movl	%edi, %edx
	sarl	$8, %edi
	sall	$8, %edx
	andl	$65280, %edi
	andl	$16711680, %edx
	orl	%edx, %eax
	orl	%edi, %eax
	ret

while using:

int main(int argc, char **argv)
{
  return __builtin_bswap32(argc);
}

one gets:

main:
.LFB0:
	.cfi_startproc
	movl	%edi, %eax
	bswap	%eax
	ret
2019-03-05 22:27:02 +01:00
..
bind Expose OS::get_current_video_driver to scripting languages 2019-02-16 14:41:07 +01:00
io Make sure ResurceLoader.exists works on imported files, fixes #23555 2019-03-04 21:01:21 -03:00
math TileSet/TileMap: Decompose solid non-convex polygons into convexes. Real fix for #24003 2019-03-04 21:03:10 -03:00
os More style cleanup... 2019-03-04 10:11:29 +01:00
array.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
array.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
class_db.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
class_db.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
color_names.inc Make core/ includes absolute, remove subfolders from include path 2018-09-12 09:52:22 +02:00
color.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
color.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
command_queue_mt.cpp Fix alignment and locking issues with CommandQueueMT 2019-02-16 04:00:19 +01:00
command_queue_mt.h Fix alignment and locking issues with CommandQueueMT 2019-02-16 04:00:19 +01:00
compressed_translation.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
compressed_translation.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
core_builders.py Allow system certs file to be used by Editor. 2018-09-15 14:45:54 +02:00
core_string_names.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
core_string_names.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
cowdata.h Repair String lstrip and rstrip. 2019-01-07 17:34:44 +00:00
dictionary.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
dictionary.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
engine.cpp Add hex-encoded version number to Engine singleton for easy comparisons 2019-02-17 13:38:52 +01:00
engine.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
error_list.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
error_macros.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
error_macros.h Clean up blend shape support in GLES2 and GLES3. 2019-03-01 16:01:44 -03:00
func_ref.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
func_ref.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
global_constants.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
global_constants.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
hash_map.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
hashfuncs.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
image.cpp Add -Wshadow=local to warnings and fix reported issues. 2019-02-20 19:44:12 +01:00
image.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
input_map.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
input_map.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
int_types.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
list.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
make_binders.py fix windows build using python 3.7 2018-07-28 18:13:48 +02:00
map.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
message_queue.cpp Do not use the workaround for desktop nvidia on mobile and html5. 2019-01-14 11:24:00 -03:00
message_queue.h Do not allow adding tasks while in the middle of flushing a message queue 2019-01-14 11:00:05 -03:00
method_bind.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
method_bind.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
method_ptrcall.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
node_path.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
node_path.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
oa_hash_map.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
object.cpp Print errors comming from callv 2019-03-05 12:24:21 +02:00
object.h Implement a cleaner (and better) way to save imagedata from ImageTexture, fixes #18801 2019-02-21 20:49:42 -03:00
ordered_hash_map.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
packed_data_container.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
packed_data_container.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
pair.h Fix many asan and ubsan reported issues 2019-01-30 06:43:56 +01:00
path_remap.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
path_remap.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
pool_allocator.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
pool_allocator.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
pool_vector.cpp Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
pool_vector.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
print_string.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
print_string.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
project_settings.cpp Add -Wshadow=local to warnings and fix reported issues. 2019-02-20 19:44:12 +01:00
project_settings.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
ref_ptr.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
ref_ptr.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
reference.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
reference.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
register_core_types.cpp Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
register_core_types.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
resource.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
resource.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
rid.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
rid.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
ring_buffer.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
safe_refcount.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
safe_refcount.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
script_debugger_local.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
script_debugger_local.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
script_debugger_remote.cpp Ability to keep pumping messages while being debugged, may be a solution for #21431 2019-03-03 17:12:19 -03:00
script_debugger_remote.h Make allowed pid for window takeover happen immediately, fixes #21431 2019-02-23 12:09:35 -03:00
script_language.cpp Add -Wshadow=local to warnings and fix reported issues. 2019-02-20 19:44:12 +01:00
script_language.h Use script instance binding for objects constructed from C# 2019-02-09 00:32:18 +01:00
SCsub Update zstd to 1.3.8 2019-01-03 22:35:20 -02:00
self_list.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
set.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
simple_type.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
sort_array.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
string_buffer.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
string_builder.cpp Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
string_builder.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
string_name.cpp Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
string_name.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
translation.cpp Add -Wshadow=local to warnings and fix reported issues. 2019-02-20 19:44:12 +01:00
translation.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
type_info.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
typedefs.h Use GCC builtins for bswap as compiler can then emit these via instructions. 2019-03-05 22:27:02 +01:00
ucaps.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
undo_redo.cpp Implement a more coherent (and way less hack) way to block animation updates, fixes #24618 2019-03-03 17:57:16 -03:00
undo_redo.h Implement a more coherent (and way less hack) way to block animation updates, fixes #24618 2019-03-03 17:57:16 -03:00
ustring.cpp Don't crash when parse_utf8 receives a NULL pointer 2019-02-22 19:28:19 +01:00
ustring.h Fix warnings seen with -Wignored-qualifiers. 2019-02-21 20:24:29 +01:00
variant_call.cpp Fix return value for Dictionary.erase() 2019-02-21 18:52:29 +08:00
variant_op.cpp Merge pull request #25934 from mrcdk/pool_int_real_color_interpolate 2019-03-03 13:30:43 +01:00
variant_parser.cpp Fix VariantWriter overflow on 64-bit int 2019-02-21 11:24:00 +01:00
variant_parser.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
variant.cpp Fix many asan and ubsan reported issues 2019-01-30 06:43:56 +01:00
variant.h Align the Variant data member 2019-02-20 11:14:22 +00:00
vector.h Core: Ensure classes match their header filename 2019-02-12 13:34:25 +01:00
version.h Add hex-encoded version number to Engine singleton for easy comparisons 2019-02-17 13:38:52 +01:00
vmap.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
vset.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00