Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
5b4fe3ad
Commit
5b4fe3ad
authored
Jan 12, 2010
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Win32: compile fix
parent
c3daaedc
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
21 deletions
+18
-21
src/misc/cpu.c
src/misc/cpu.c
+18
-21
No files found.
src/misc/cpu.c
View file @
5b4fe3ad
...
...
@@ -50,9 +50,9 @@
#if defined( __i386__ ) || defined( __x86_64__ ) || defined( __powerpc__ ) \
|| defined( __ppc__ ) || defined( __ppc64__ ) || defined( __powerpc64__ )
# ifndef WIN32
static
bool
check_OS_capability
(
const
char
*
psz_capability
,
pid_t
pid
)
{
#ifndef WIN32
int
status
;
if
(
pid
==
-
1
)
...
...
@@ -68,14 +68,24 @@ static bool check_OS_capability( const char *psz_capability, pid_t pid )
fprintf
(
stderr
,
" some optimizations will be disabled unless "
"you upgrade your OS
\n
"
);
return
false
;
#else
# warning FIXME!
# define fork() (errno = ENOSYS, -1)
(
void
)
pid
;
(
void
)
psz_capability
;
return
true
;
#endif
}
# define check_capability(name, flag, code) \
do { \
pid_t pid = fork(); \
if( pid == 0 ) \
{ \
signal(SIGILL, SIG_DFL); \
__asm__ __volatile__ ( code : : ); \
_exit(0); \
} \
if( check_OS_capability((name), pid )) \
i_capabilities |= (flag); \
} while(0)
# else
/* WIN32 */
# define check_capability(name, flag, code) (void)0
# endif
#endif
/*****************************************************************************
...
...
@@ -116,19 +126,6 @@ uint32_t CPUCapabilities( void )
: "cc" );
# endif
/* Check if the OS really supports the requested instructions */
# define check_capability(name, flag, code) \
do { \
pid_t pid = fork(); \
if( pid == 0 ) \
{ \
signal(SIGILL, SIG_DFL); \
__asm__ __volatile__ ( code : : ); \
_exit(0); \
} \
if( check_OS_capability((name), pid )) \
i_capabilities |= (flag); \
} while(0)
# if defined (__i386__) && !defined (__i486__) && !defined (__i586__) \
&& !defined (__i686__) && !defined (__pentium4__) \
&& !defined (__k6__) && !defined (__athlon__) && !defined (__k8__)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment